Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/434.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何通过grunt usemin为concat和uglify使用我自己的选项配置_Javascript_Node.js_Gruntjs_Grunt Usemin - Fatal编程技术网

Javascript 如何通过grunt usemin为concat和uglify使用我自己的选项配置

Javascript 如何通过grunt usemin为concat和uglify使用我自己的选项配置,javascript,node.js,gruntjs,grunt-usemin,Javascript,Node.js,Gruntjs,Grunt Usemin,例如:我使用下面的当前配置来uglifymy Grunfile中的我的JS脚本: uglify: { options: { report: "min", //"gzip", sourceMap: true, preserveComments: false, //"some", "all" }, application: { options: {

例如:我使用下面的当前配置来
uglify
my Grunfile中的我的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
以使用这些相同的选项,例如
banner
sourceMap:false
,以及生成的文件块,我已经阅读了github或NPM注册表中通常提供的快速文档,但似乎没有找到一个可靠的答案。

文档中有一句话非常重要:

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

原则是只声明您希望将usemin(在grunt注册任务中)用于您想要的所有主要任务:concat、uglify。。。 默认情况下,Usemin将根据registertask选项和html标记注释创建所有这些任务,而无需再声明

代码胜过文字:

  • 表达块标记目标文件。就你而言 比如:
  • 
    
    2-注册您希望usemin为您的应用程序生成的任务 在运行时(它不会在文件中生成任何内容)- 应在文档中详细说明的内容)。例如 :

    grunt.registerTask('minify'[ “使用准备” “海螺” “cssmin” “丑” “复制”
    ,'rev “usemin” ])

    3-默认情况下,生成除useminPrepare和usemin之外的所有任务(查看这两个块的文档)

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

    丑陋的:{ 选项:{ sourceMap:false } }

    希望能有帮助

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