我有一个包含子模块的父项目。该模块有自己的bower.json
,它指定了模块的依赖关系,.bowerrc
指定了应该下载哪个文件夹。这些依赖关系在模块HTML中链接。
父项目使用package.json
来管理节点依赖项。
为防止用户必须同时运行npm install
(对于父依赖项)和cd module
,bower install
,cd ../
(对于模块依赖项),我添加了postinstall
的{{1}}脚本:
package.json
请注意,我可以让Bower将模块的依赖项安装到"scripts": {
"postinstall" : "./node_modules/.bin/bower install ./module/ --config.directory=\"./module/public/bower_components\""
}
中的唯一方法是在/module/public/bower_components
脚本中明确说明directory
。
但是postinstall
已经包含了这些信息,所以理想情况下,我想要制作这样的信息。 ./module/.bowerrc
意识到这一点。这也可以使bower install
更容易维护,package.json
更便于携带。
我还尝试将Bower依赖关系和module
脚本转移到我的模块的postinstall
中,使用父{4}中的package.json
挂钩{ {1}}在模块目录中运行postinstall
。但这种方法以模块结束。依赖项被下载到父{q} package.json
文件夹中。
有没有更好的方法来解决这个问题?
答案 0 :(得分:3)
Bower config使用以下优先顺序来解析构建的配置。
来自http://bower.io/docs/config/
的凉亭文档在您的情况下,您可以将.bowerrc文件放在与package.json相同的文件夹中,但配置前缀为module / public的所有属性以使您的设置正常工作。
我确实喜欢从package.json中的一个地方管理所有依赖项的想法。