Grunt/Bower/Component:如何处理依赖关系?

3
我已经建立了一个类似于网站基础模板/工作流的东西,主要使用Grunt。该模板的一部分是Modernizr功能检测库,我的某个Grunt任务依赖于它。
目前,我只是在我的清单中存储了那个依赖项。这带来了两个问题:
  1. 我需要在我的和package.json(用于Grunt)中更新项目的名称、版本、作者等信息。
  2. 我不喜欢我的依赖项是分散的——我需要运行npm installbower install ...才能开始工作。(虽然这不是一个很大的工作量,但对我来说确实反直觉。)
有没有更聪明、更普遍的方法来处理这样的依赖关系? 我已经看了看使用component.json文件的方法,这些文件可以被各种包管理器读取(我特别看了下DUO),但我不确定这是否是我真正需要的。似乎包含了构建过程,但我已经通过Grunt进行了构建。
1个回答

0

我建议你使用Yeoman generator。

如果你想为自己的项目实现Yeoman generator,我在这里留下一个有用的教程链接:

[1] http://code.tutsplus.com/tutorials/build-your-own-yeoman-generator--cms-20040?post_id=1026796690681657_1026796687348324#=

[2] http://yeoman.io/authoring/

1、基本上,Yeoman generator的index.js可以提示用户输入,存储并将其写入任何文件。由于和你一样的需求,我目前正在创建自己的generator,将我的最爱放入bower.json和package.json中,并有用地使用了这些文章。

我还强烈建议你仔细查看其他git repo上的generator。generator是用Javascript编写的,同时使用Node.js和Yeoman的API。

2. 这很简单。你可以在.bash_profile上创建自己的别名。

  • 打开终端(我用的是OSX)
  • 粘贴 echo 'alias coinstall=npm install && bower install --save-dev' | tee ~/.bash_profile && source ~/.bash_profile 并按回车
  • 你将会有一个隐藏的.bash_profile文件
  • 现在你可以通过输入coinstall来安装npm和bower了!

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接