首页 > 技术文章 > Gruntjs提高生产力(四)

enix 2013-12-17 10:49 原文

思考:

  1.grunt以工程为单位安装插件?

  如果有新工程就要重新安装插件或者把安装好的插件拷贝过去。这样很麻烦,解决方案是需要用grunt的项目统一放在grunt项目中。

 

  2.每次需要针对项目编写gruntfile.js?

  a.我们可以把文件夹,路径用变量代替。传入xx.json或者用命令行传参的方式。

  还记得initConfig中的grunt.file.readJSON('package.json')这个方法么?我们可以写一个config.json,用这个方法读入就可以获取变量。

 config.json如下 

{
	"concat": {
		"dist": {
			"dest": "./script/"
		}
	}
}

 

gruntfile.js中这样读入  

pkg: grunt.file.readJSON('package.json'),
config : grunt.file.readJSON('config.json'),

要使用传入的文件夹可以

 

1.<%= config.concat.dist.dest %> //模板使用
2.config.concat.dist.dest //直接使用

  b. 用命令行工具传递参数

  还记得console.log(grunt.option('keys'));

命令行中只要这样使用

grunt --keys=1

  在gruntfile.js执行时就就能通过grunt.option('keys')获取到值1

 

暂时我想到的是以上两种方法可以通用我们的gruntjs而减少编写的成本。

推荐阅读