首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用我自己的选项配置来连接和使用grunt-usemin

如何使用我自己的选项配置来连接和使用grunt-usemin
EN

Stack Overflow用户
提问于 2014-04-06 13:31:57
回答 1查看 3.2K关注 0票数 9

例如:我使用下面的当前配置在我的Gruntfile中uglify我的JS脚本:

代码语言:javascript
复制
    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选项,例如:

代码语言:javascript
复制
    <!-- 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来使用这些相同的选项,比如bannersourceMap: false以及生成的文件块,我已经阅读了github或NPM注册表中通常提供的快速文档,但似乎找不到一个可靠的答案。

EN

回答 1

Stack Overflow用户

发布于 2014-05-23 15:17:10

在文件中有一句是非常重要的:

此外,useminPrepare动态地为concat、uglify和cssmin生成配置。重要:您仍然需要手动管理这些依赖项并调用每个任务。

原则是只声明您想要使用usemin (在grunt注册任务中)和所有您想要的主要任务: concat,uglify.在默认情况下,Usemin将根据寄存器任务选项和html标记注释创建所有这些任务,而不需要声明。

代码比文字更好:

  1. 表示块标记目标文件。在你的情况下,就像:

<!-- 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 }

希望能帮上忙。

票数 13
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22894711

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档