怎么配置一个gruntfile.js在多个目录下使用
2016-03-01 · 百度知道合伙人官方认证企业
育知同创教育
1【专注:Python+人工智能|Java大数据|HTML5培训】 2【免费提供名师直播课堂、公开课及视频教程】 3【地址:北京市昌平区三旗百汇物美大卖场2层,微信公众号:yuzhitc】
向TA提问
关注
展开全部
gruntfile.js可配置路径的读取方法:
一是通过自定义的task,接受命令行参数,并据此加以处理。
二是在运行任务之前,通过grunt.config.set('xx.yy', value)这样的方式,动态修改原来的配置。
举例:
module.exports = function (grunt) {
// Project configuration.
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
jasmine_node: {
options: {
matchall: false,
extensions: 'js',
specNameMatcher: '_spec'
},
// 对于grunt-jasmine-node而言,这里设置了目标文件夹
all: ['test/spec/']
}
});
grunt.loadNpmTasks('grunt-jasmine-node');
grunt.registerTask('default', ['jasmine_node']);
// 自定义一个task,运行方式:grunt spec:dir 或 grunt spec
grunt.registerTask('spec', 'run tests in specific dir', function(dir){
// 如果是grunt spec,dir的值为undefined,那么维持原设置不变
if (dir !== undefined) {
// 否则,修改jasmine-node的all选项
grunt.config.set('jasmine_node.all', ['test/spec/' + dir]);
}
// 运行原来的task
grunt.task.run('jasmine_node');
});
};
一是通过自定义的task,接受命令行参数,并据此加以处理。
二是在运行任务之前,通过grunt.config.set('xx.yy', value)这样的方式,动态修改原来的配置。
举例:
module.exports = function (grunt) {
// Project configuration.
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
jasmine_node: {
options: {
matchall: false,
extensions: 'js',
specNameMatcher: '_spec'
},
// 对于grunt-jasmine-node而言,这里设置了目标文件夹
all: ['test/spec/']
}
});
grunt.loadNpmTasks('grunt-jasmine-node');
grunt.registerTask('default', ['jasmine_node']);
// 自定义一个task,运行方式:grunt spec:dir 或 grunt spec
grunt.registerTask('spec', 'run tests in specific dir', function(dir){
// 如果是grunt spec,dir的值为undefined,那么维持原设置不变
if (dir !== undefined) {
// 否则,修改jasmine-node的all选项
grunt.config.set('jasmine_node.all', ['test/spec/' + dir]);
}
// 运行原来的task
grunt.task.run('jasmine_node');
});
};
展开全部
你这不是“一个gruntfile在多个目录下使用”,而是“在gruntfile里指定某几个目录”。
建议把相关代码贴一下吧,这样方便别人针对具体情况作答。
这里举grunt-jasmine-node作为例子:
module.exports = function (grunt) {
// Project configuration.
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
jasmine_node: {
options: {
matchall: false,
extensions: 'js',
specNameMatcher: '_spec'
},
// 对于grunt-jasmine-node而言,这里设置了目标文件夹
all: ['test/spec/']
}
});
grunt.loadNpmTasks('grunt-jasmine-node');
grunt.registerTask('default', ['jasmine_node']);
// 自定义一个task,运行方式:grunt spec:dir 或 grunt spec
grunt.registerTask('spec', 'run tests in specific dir', function(dir){
// 如果是grunt spec,dir的值为undefined,那么维持原设置不变
if (dir !== undefined) {
// 否则,修改jasmine-node的all选项
grunt.config.set('jasmine_node.all', ['test/spec/' + dir]);
}
// 运行原来的task
grunt.task.run('jasmine_node');
});
};
关键:
一是通过自定义的task,接受命令行参数,并据此加以处理。
二是在运行任务之前,通过grunt.config.set('xx.yy', value)这样的方式,动态修改原来的配置。
建议把相关代码贴一下吧,这样方便别人针对具体情况作答。
这里举grunt-jasmine-node作为例子:
module.exports = function (grunt) {
// Project configuration.
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
jasmine_node: {
options: {
matchall: false,
extensions: 'js',
specNameMatcher: '_spec'
},
// 对于grunt-jasmine-node而言,这里设置了目标文件夹
all: ['test/spec/']
}
});
grunt.loadNpmTasks('grunt-jasmine-node');
grunt.registerTask('default', ['jasmine_node']);
// 自定义一个task,运行方式:grunt spec:dir 或 grunt spec
grunt.registerTask('spec', 'run tests in specific dir', function(dir){
// 如果是grunt spec,dir的值为undefined,那么维持原设置不变
if (dir !== undefined) {
// 否则,修改jasmine-node的all选项
grunt.config.set('jasmine_node.all', ['test/spec/' + dir]);
}
// 运行原来的task
grunt.task.run('jasmine_node');
});
};
关键:
一是通过自定义的task,接受命令行参数,并据此加以处理。
二是在运行任务之前,通过grunt.config.set('xx.yy', value)这样的方式,动态修改原来的配置。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询