例如:我使用下面的当前配置在我的Gruntfile中uglify我的JS脚本:
uglify: {
options: {
report: "min", //"gzip",
sourceMap: true,
preserveComments: false, //"some", "all"
},
application: {
options: {
// expand: true,
banner: '<%= app.banner %>',
preserveComments: "some"
},
src: 'dist/js/application.js',
dest: ".tmp/js/application.min.js"
},
dependencies: {
options: {
sourceMap: false
},
src: ['dist/js/dependencies.js'],
dest: ".tmp/js/dependencies.min.js"
},我知道grunt-usemin从在 gruntfile选项中声明的html文件中的代码块生成src和dest选项,例如:
<!-- build:js js/app.js -->
<script src="js/app.js"></script>
<script src="js/controllers/thing-controller.js"></script>
<script src="js/models/thing-model.js"></script>
<script src="js/views/thing-view.js"></script>
<!-- endbuild -->那么,我如何配置grunt-usemin来使用这些相同的选项,比如banner、sourceMap: false以及生成的文件块,我已经阅读了github或NPM注册表中通常提供的快速文档,但似乎找不到一个可靠的答案。
发布于 2014-05-23 15:17:10
在文件中有一句是非常重要的:
此外,useminPrepare动态地为concat、uglify和cssmin生成配置。重要:您仍然需要手动管理这些依赖项并调用每个任务。
原则是只声明您想要使用usemin (在grunt注册任务中)和所有您想要的主要任务: concat,uglify.在默认情况下,Usemin将根据寄存器任务选项和html标记注释创建所有这些任务,而不需要声明。
代码比文字更好:
<!-- build:js js/app.min.js --> <script src="js/app.js"></script> <script src="js/controllers/thing-controller.js"></script> <script src="js/models/thing-model.js"></script> <script src="js/views/thing-view.js"></script> <!-- endbuild -->
2-注册您希望usemin在运行时为您生成的任务(它不会在您的文件中生成任何内容--应该在文档中进行修改)。例如:
grunt.registerTask('minify','useminPrepare‘,'concat’,'cssmin‘,'uglify’,'copy‘ ,'rev,'usemin‘)
默认情况下,除了useminPrepare和usemin之外,所有这些任务都是生成的(查看这两个块咕噜咕噜的文档)。
然后,如果您想添加特定的选项,比如源代码,只需重写配置代码,而不需要重新定义所有内容:
丑陋:{选项:{ sourceMap: false }
希望能帮上忙。
https://stackoverflow.com/questions/22894711
复制相似问题