Ответ 1
Так как gruntjs запускается в node, вы можете получить доступ к package.json как:
var package = require('./package.json'),
property = package.property[0];
Есть ли способ передать массив в grunt.js из файла package.json? Я пробовал несколько разных способов, и никто из них, похоже, не работает. В настоящее время у меня есть:
/*global module:false*/
module.exports = function(grunt) {
// Project configuration.
grunt.initConfig({
pkg: '<json:package.json>',
lint: {
files: '<%= pkg.lint.join(", ") %>'
}
// Default task 'lint qunit concat min'
grunt.registerTask('default', 'lint');
};
package.json
{
"lint": [
"grunt.js",
"test.js"
]
}
Единственное решение, которое я смог найти, - это передать определенный индекс массива; например <% = pkg.lint [0]% > . Заранее благодарим за помощь!
Так как gruntjs запускается в node, вы можете получить доступ к package.json как:
var package = require('./package.json'),
property = package.property[0];
Я думаю, что синтаксис <%= … %>
(переменная интерполяция в система шаблонов подчеркивания) может выводить только строки, а не массивы/объекты.
Попробуйте это вместо:
lint: {
files: '<config:pkg.lint>'
}
Я нашел этот синтаксис в Grunt задача jQuery init.
grunt.initConfig({
lint: grunt.file.readJSON('package.json').lint,
});