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 – 注册任务以获取更多详细信息
- Angular Ui-Router在使用node.js时不是路由
- 在浏览器中直接访问URL时,angular度路由不起作用,但在点击后工作?
- 在Node.js&Express上使用Angular的客户端边界
- 环境标志已被弃用
- $ http.get()调用的Node Express Cross Origin
- 如何在angularjs中加载一个文本域
- Express中的服务器端validation与单页Angular应用程序兼容
- 如何select正确的JavaScript框架以及如何开始?
- 节点/ Angular / Passport / Satellizer基于令牌的Facebook身份validation不返回令牌