思考:
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而减少编写的成本。