Grunt在开发环境中美化或不美化

我在AngularJS Web应用程序中使用Grunt Uglify来丑化我的javascript和css文件。

我有一个开发,testing和生产环境。 我只想在部署testing和生产的时候才丑化,但是在开发中我想保持我的代码没有uglify,使debugging任务更容易。

到目前为止,我正在手动。 我的意思是,我有一个包含所有美女代码的index.html,当我要部署一个版本的时候,我会隐藏代码并进行部署。

使用grunt.registerTask函数创build一个任务,以在开发上运行任务,以及在部署之前运行其他任务来运行任务。

这里是一个例子:

在开发环境中,我正在运行buildDev任务来编译scss文件并将它们链接到模板文件

 module.exports = function(grunt) { grunt.registerTask('buildDev', [ 'sass:website', 'asset-linker:websiteCSS', 'asset-linker:websiteJS', ]); }; 

在prod中部署我的应用程序之前,我运行buildProd任务来运行其他任务,如concat,cssmin,uglify:

 module.exports = function(grunt) { grunt.registerTask('buildProd', [ 'clean:websiteStatic', 'sass:website', 'concat:websiteCSS', 'concat:websiteJS', 'cssmin:website', 'uglify:website', 'asset-linker:prodWebsiteCSS', 'asset-linker:prodWebsiteJS', ]); }; 

然后,创build两个注册任务,一个在您的开发环境中运行任务,另一个在部署您的应用程序之前。

我build议您阅读Grunt Documentation – 注册任务以获取更多详细信息