如何的package.json阵列grunt.js传递(How to pass in package

2019-06-28 08:36发布

有一种方法在阵列通过从的package.json文件grunt.js? 我已经尝试了几种不同的方式和他们都不工作。 我目前有:

/*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]%>。 在此先感谢您的帮助!

Answer 1:

由于在运行中gruntjs节点可以访问的package.json,如:

var package = require('./package.json'),
    property = package.property[0];


Answer 2:

我认为<%= … %>语法(在可变内插下划线的模板系统 )只能输出字符串,而不是阵列/对象。

试试这个:

lint: {
    files: '<config:pkg.lint>'
}

我发现这个语法咕噜的jQuery的初始化任务 。



Answer 3:

grunt.initConfig({
  lint: grunt.file.readJSON('package.json').lint,
});


文章来源: How to pass in package.json array to grunt.js