例如:我使用下面的当前配置对我的Gruntfile中的JS脚本进行uglify编码:

    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从useminPrepare 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以使用这些相同的选项,例如bannersourceMap: false和生成的文件块,我已经阅读了通常在github或NPM注册表中给出的快速文档,但似乎找不到可靠的答案。

最佳答案

在文档中,一句话非常重要:



原理是仅声明要在所有主要任务中使用usemin(在grunt register任务中):concat,uglify ...
默认情况下,Usemin将根据您的registertask选项和html标记注释创建所有这些任务,而无需进行任何声明。

代码胜于单词:

  • 表示您的块标记目标文件。在你的情况下
    像:



  • 2-注册您要使用的min生成的任务
    在运行时(它不会在您的文件中生成任何内容-
    一些应该在文档中明确说明的内容)。例如
    :



    3-默认情况下,所有这些任务都会生成,但useminPrepare和usemin除外(请参见文档中的这两个块grunt-usemin)。

    然后,如果您想添加诸如sourcemap之类的特定选项,只需重写配置代码,而无需重新定义所有内容:



    希望能帮助到你。

    关于javascript - 如何使用grunt-usemin将自己的选项配置用于concat和uglify,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22894711/

    10-10 02:15