是否可以在grunt.js中访问通配符之外的通配符变量? 例如,我的配置看起来像这样:
module.exports = function(grunt) {
grunt.initConfig({
globalConfig: grunt.file.readJSON('src/config.json'),
pkg: grunt.file.readJSON('package.json'),
concat: {
options: {
separator: ';'
},
dist: {
src: ['src/**/*.js'],
dest: 'dist/<%= pkg.name %>.js'
}
},
uglify: {
options: {
banner: '/*! <%= pkg.name %> <%= grunt.template.today("dd-mm-yyyy") %> */\n'
},
dist: {
files: {
'dist/<%= pkg.name %>.min.js': ['<%= concat.dist.dest %>']
}
}
},
qunit: {
files: ['test/**/*.html']
},
jshint: {
files: ['Gruntfile.js', 'src/**/*.js', 'test/**/*.js'],
options: {
// options here to override JSHint defaults
globals: {
jQuery: true,
console: true,
module: true,
document: true
}
}
},
watch: {
files: ['<%= jshint.files %>'],
tasks: ['jshint', 'qunit']
}
});
grunt.loadNpmTasks('grunt-contrib-uglify');
grunt.loadNpmTasks('grunt-contrib-jshint');
grunt.loadNpmTasks('grunt-contrib-qunit');
grunt.loadNpmTasks('grunt-contrib-watch');
grunt.loadNpmTasks('grunt-contrib-concat');
grunt.registerTask('test', ['jshint', 'qunit']);
grunt.registerTask('default', ['jshint', 'qunit', 'concat', 'uglify']);
};
我的JSON文件ot globalConfig看起来像这样:
{
"buildOrder": ["file1.js", "file2.js", "file3.js"]
}
如何访问buildOrder-Array并在concat.dist.src中使用它?
通过通配符,我会这样访问:
<%= globalConfig.buildOrder %>
但是我想在通配符之外使用数组,因为它是一个数组:
dist: {
src: globalConfig.buildOrder,
dest: 'dist/app.bundle.js'
}