我正在编写Node.js应用程序并使用Heroku来托管它。我还使用Webpack + Babel将我的所有服务器文件捆绑成一个并使用ES2015语法。但问题是,我需要在运行之前构建我的应用程序。所以我将此命令放入package.json
:
"scripts": {
"start": "webpack && node build/server.js"
},
这样可行,但问题是,当我运行heroku restart
时,我的应用程序仅在重建后运行。当我的应用程序崩溃时,同样的故事。
所以我想我需要2个不同的命令:一个在部署(webpack
)而一个在npm start
(node build/server.js
)
我该如何做到这一点?
答案 0 :(得分:1)
实际上并没有那么难。只需将package.json
更改为
"scripts": {
"heroku-postbuild": "webpack",
"start": "node build/server.js"
}
(根据这篇文章:Heroku Node.js Support)