2015-10-29 76 views
3

我有不同組的JS文件,我想要concat和uglify。一個是爲應用程序,一個是爲網站。我的gruntfile.js看起來像下面的那個。問題是,只有website一個,即使我已經註冊了繁重的任務形式運行:grunt.registerTask('default', ['concat:app', 'concat:website', 'uglify']);使用Grunt來自兩個不同源的Concat和Uglify JS文件

concat: { 
    app: { 
     js: { 
      src: [ 
      'app/js/vendor/jquery.js', 
      'app/js/app/ui.js', 
      'app/js/app/data.js' 
     ], 
      dest: 'app/js/app.js' 
     }, 
     css: { 
      src: [ 
      'app/css/vendor/normalize.css', 
      'app/css/vendor/ui.css', 
      'app/css/vendor/style.css', 
     ], 
      dest: 'app/css/app.css' 
     } 
    }, 
    website: { 
     src: [ 
      'app/js/vendor/jquery.js', 
      'app/js/website/scripts.js' 
     ], 
     dest: 'app/js/common.js' 
    } 
}, 
uglify: { 
    development: { 
     options: { 
      preserveComments: false 
     }, 
     files: { 
      'app/js/app.min.js': 'app/js/app.js', 
      'app/js/common.min.js': 'app/js/common.js' 
     } 
    } 
} 
+0

在我看來,問題是在'應用程序',我連接CSS和JS文件的事實。我刪除了CSS塊,它運行良好。 – mapr

回答

1

CONCAT可以在同一個目標連接多個文件和類型,但你必須使用適當的咕嚕語法(https://www.npmjs.com/package/grunt-contrib-concat#multiple-files-per-target ):

concat: { 
    app: { 
    'app/js/app.js': [ 
     'app/js/vendor/jquery.js', 
     'app/js/app/ui.js', 
     'app/js/app/data.js' 
    ], 
    'app/css/app.css': [ 
     'app/css/vendor/normalize.css', 
     'app/css/vendor/ui.css', 
     'app/css/vendor/style.css', 
    ], 
    } 
},