Grunt 模板变量和 if else
Grunt template variables and if else
我的 Gruntfile 中有一些模板变量用于我的 dist 文件夹。我也想在if else语句中使用它们来调整一些任务的配置。
这是我的 Gruntfile 的简短版本:
module.exports = function(grunt) {
grunt.initConfig({
// Variables
path: {
develop: 'dev/',
output: 'output/'
},
// Clean empty task
cleanempty: {
output: {
src: '<%= path.output %>**/*'
}
},
// Sync
sync: {
output: (function(){
console.log(grunt.config('path.output')); // Returns undefined
if(grunt.config('path.output') === 'output/') {
return {
// Config A
}
} else {
return {
// Config B
}
}
}())
}
不幸的是我无法让它工作。 grunt.config('path.output') returns 未定义。
如何读取 Grunt 模板变量?更好的解决方法的提示,我也喜欢听。
尝试
grunt.config.get('path.output')
变量需要在grunt.initConfig外声明。然后你需要在grunt.initConfig
内引用它
在以下位置找到我的解决方案:
http://chrisawren.com/posts/Advanced-Grunt-tooling
工作样本:
module.exports = function(grunt) {
// Variables
var path = {
develop: 'dev/',
output: 'output/'
};
grunt.initConfig({
path: path, // <-- Important part, do not forget
// Clean empty task
cleanempty: {
output: {
src: '<%= path.output %>**/*'
}
},
// Sync
sync: {
output: (function(){
console.log(path.output); // Returns output/
if(path.output) === 'output/') {
return {
// Config A
}
} else {
return {
// Config B
}
}
}())
}
//...the rest of init config
});
}
我的 Gruntfile 中有一些模板变量用于我的 dist 文件夹。我也想在if else语句中使用它们来调整一些任务的配置。
这是我的 Gruntfile 的简短版本:
module.exports = function(grunt) {
grunt.initConfig({
// Variables
path: {
develop: 'dev/',
output: 'output/'
},
// Clean empty task
cleanempty: {
output: {
src: '<%= path.output %>**/*'
}
},
// Sync
sync: {
output: (function(){
console.log(grunt.config('path.output')); // Returns undefined
if(grunt.config('path.output') === 'output/') {
return {
// Config A
}
} else {
return {
// Config B
}
}
}())
}
不幸的是我无法让它工作。 grunt.config('path.output') returns 未定义。 如何读取 Grunt 模板变量?更好的解决方法的提示,我也喜欢听。
尝试
grunt.config.get('path.output')
变量需要在grunt.initConfig外声明。然后你需要在grunt.initConfig
内引用它在以下位置找到我的解决方案: http://chrisawren.com/posts/Advanced-Grunt-tooling
工作样本:
module.exports = function(grunt) {
// Variables
var path = {
develop: 'dev/',
output: 'output/'
};
grunt.initConfig({
path: path, // <-- Important part, do not forget
// Clean empty task
cleanempty: {
output: {
src: '<%= path.output %>**/*'
}
},
// Sync
sync: {
output: (function(){
console.log(path.output); // Returns output/
if(path.output) === 'output/') {
return {
// Config A
}
} else {
return {
// Config B
}
}
}())
}
//...the rest of init config
});
}