Bower是用于客户端Javascript的,npm是用于服务器端的,并且读取component.json文件以识别应在部署时获取的依赖项,因此,我很高兴heroku将在缓慢的编译时运行它。
component.json
不幸的是,我无法从heroku控制台或一次性命令(heroku run "npm help")(heroku run bash-> npm help)中调用npm或bower,因为这可能与ruby的耙子有关。我package.json在引擎部分中放置了npm和node(最新/ x版本),而不是依赖项。
heroku run "npm help"
heroku run bash
npm help
package.json
我认为可以通过自定义节点buildpack来解决,但是我认为这对于激活如此明显的任务来说有点太繁重。
您还可以设置postintall命令,例如package.json
postintall
"dependencies": { "bower": "0.6.x" }, "scripts": { "postinstall": "./node_modules/bower/bin/bower install" }
然后npm install还将安装Bower依赖项。
npm install
优点 :一个命令可以全部统治。
缺点 :您不必要将Bower嵌入为依赖项。