Grunt/Gulp源文件的目的地使用情况
问题描述:
我打算使用grunt/gulp来concat/uglify /混淆我的混合应用程序。Grunt/Gulp源文件的目的地使用情况
的源代码:
js-
a.js
b.js
css-
a.css
b.css
现在,我的index.html
加载上述JavaScript和CSS文件。
我将以上a.js
和b.js
的concat和混淆文件称为c.js
。 它是执行所有任务,并具有所有单个文件,即c.js
,但我的问题是我的index.html
仍然指向a.js
和b.js
的好习惯。
c.js
怎么办?它从未被导入任何地方?我们可以简单地丑化a.js
和b.js
本身并保持原样。如果是这样,如何使用c.js
?
答
- 我认为你应该做单独的文件夹进行部署的目的,让说你有文件夹
build
您的咕噜/一饮而尽结果应当被注定,所以总是index.html的参考缩小的资源在构建folder
, - 可能是这可以帮助http://www.willpeavy.com/minifier/
答
1:为您打造a.js
和b.js
为c.js
,因此只是链接到c.js
index.html中。
2:有很多一饮而尽/咕噜插件支持微小
咕噜了contrib-htmlmin:https://www.npmjs.com/package/grunt-contrib-htmlmin
咕嘟咕嘟一饮而尽,htmlmin:https://www.npmjs.com/package/gulp-htmlmin
答
如果你不打算有咕噜/吞噬观察脚本,或者只是发现它与非缩小文件一起开发得更快,并且希望只是在最后执行任务来完成所有生产缩小,然后您可以看看processhtml:
- 咕噜-processhtml:https://www.npmjs.com/package/grunt-processhtml
- 一饮而尽,processhtml:https://www.npmjs.com/package/gulp-processhtml
这个插件让我们你在HTML,它引用了缩小的文件的一些标记,而包括您unminified文件正常<script>
标签。
<!-- build:js c.js -->
<script src="a.js"></script>
<script src="b.js"></script>
<!-- /build -->
所以,当你正在开发中,可以使用a.js
& b.js
,然后一旦processhtml
任务运行时,它会带他们并使用c.js
代替。当然,它仍然依赖于你自己先缩小和拼接到c.js
。
如果是这样,a.js和b.js仍将驻留在项目包中,对吗?在这种情况下,我是否需要手动删除a.js和b.js并将index.html链接到build/c.js? – Anand
是的,为了开发目的,a/b.js仍然在项目文件夹上,不要删除它们,只需将构建文件夹放置到部署中,例如你的网络服务器 – bowpunya
@bowpunys谢谢:-)我对这个过程有了很好的理解:) – Anand