2015-05-08 58 views
0

我似乎无法弄清楚如何为某个任务构造配置。目前我正在尝试为cssmin这么做。如何构建一个Grunt任务来开发和发布

这个配置片断正常工作:

cssmin: { 
    options: { 
     shorthandCompacting: false, 
     roundingPrecision: -1 
    }, 
    target: { 
     files: { 
      'wwwroot/all.css': ['bower_components/animate/animate.css'] 
     } 
    } 
}, 

而且我运行此像这样:

grunt.registerTask('Test', ['cssmin']); 

但我想创造一个发展释放配置这一点。所以我尝试了以下配置样式,它们都是Done, without errors.,但没有一个配置文件创建了文件。

cssmin: { 
    options: { 
     shorthandCompacting: false, 
     roundingPrecision: -1 
    }, 
    dev: { 
     target: { 
      files: { 
       'wwwroot/all.css': ['bower_components/animate/animate.css'] 
      } 
     } 
    } 
} 
grunt.registerTask('Test', ['cssmin:dev']); 

而且这样的:

cssmin: { 
    dev: { 
     options: { 
      shorthandCompacting: false, 
      roundingPrecision: -1 
     }, 
     target: { 
      files: { 
       'wwwroot/all.css': ['bower_components/animate/animate.css'] 
      } 
     } 
    } 
} 
grunt.registerTask('Test', ['cssmin:dev']); 

但这些CONFIGS似乎并不管用。它们保存Done, without errors.,但它不像第一个配置示例那样创建CSS文件。

那么,你是不是应该创建一个不同的配置类型dev/release?我在这里做错了什么?

回答

0

当您拨打cssmin:dev时,dev是您的目标。没有必要再次指定target的适当性。试试这个:

cssmin: { 
    dev: { 
     options: { 
      shorthandCompacting: false, 
      roundingPrecision: -1 
     }, 
     files: { 
      'wwwroot/all.css': ['bower_components/animate/animate.css'] 
     } 
    }, 
    build : { 
     options: { 
      shorthandCompacting: true, 
      roundingPrecision: -1 
     }, 
     files: { 
      'wwwroot/all.min.css': ['bower_components/animate/animate.css'] 
     } 
    } 
} 
grunt.registerTask('Test', ['cssmin:dev']);