包括package.json中的devdependencies

时间:2015-12-05 08:04:43

标签: yeoman yeoman-generator install.packages npm-install

我想根据需要生成devDependencies。为此我在我的生成器中有一个数组和一些这样的操作:

var FiddleGenerator = generator.Base.extend({
  init: function() {
    this.devDependencies = [];
  },
  //...excluded for brevity
  gruntConfigure: function() {
    this.devDepedencies = [
      'grunt',
      'grunt-contrib-watch',
      'grunt-contrib-connect'
    ];        
  },
  installStuff: {
    if(this.option('skip-install')) return;
    this.npmInstall(this.devDependencies, { saveDev: true });
  }
});

这里的问题是当用户选择跳过npm安装并稍后手动执行时(即npm install)没有安装任何内容。

但是,我不能简单地编写一个这样的package.json文件...我对每个包放置了什么版本,以使它们看起来如下所示:

"devDependencies": {        
    "grunt": "~0.4.2",        
    "grunt-contrib-watch": "~0.5.3",
    "grunt-contrib-connect": "^0.7.0"
  }

1 个答案:

答案 0 :(得分:0)

只需在JS代码(this.fs.writeJSON)内手动将devDependencies写入package.json文件即可。无需使用npmInstall()

您可以在此处查看此操作:MVVMLight