如何使用npm run start进行构建?

时间:2018-10-30 13:24:10

标签: heroku webpack

我正在使用webpack和heroku。 当我将网站推送到heroku时,它将重新启动并执行“ npm run start”。 当我将网站推送到heroku时,我想做的就是用“ npm run build”进行“ npm run start”

这是我的pakage.json

  "scripts": {
    "dev": "cross-env NODE_ENV=development webpack-dev-server --hot --open --inline",
    "build": "cross-env NODE_ENV=production webpack --progress --hide-modules",
    "start": "set NODE_ENV=production webpack --progress --hide-modules&&node server.js"
  },

我尝试过的是这个,但是没有用

 "start": "set NODE_ENV=production webpack --progress --hide-modules&&node server.js"

1 个答案:

答案 0 :(得分:0)

更新:

也许您的脚本无法在heroku中运行,因为默认情况下,它们运行的​​是linux,而您正在尝试运行属于Windows的“ set” 命令。尝试将其从脚本中删除,然后让 cross-env 为您完成所有其他工作:)

之前的回复:

我知道这不是最好的解决方案,但希望它能对您有所帮助:

如果问题出在运行命令的串联中,则可以将"npm-run-all"安装到项目中,然后就可以以保密的顺序运行多个脚本。

根据您的情况,您可以这样设置脚本:

 "scripts": {
    "dev": "cross-env NODE_ENV=development webpack-dev-server --hot --open --inline",
    "build": "cross-env NODE_ENV=production webpack --progress --hide-modules",
    "start": "set NODE_ENV=production webpack --progress --hide-modules",
    "run-server": "node server.js",
    "build-sart-n-run": "run-s build start run-server"

  }

之后,您可以通过Heroku CLI using a procfile或登录时使用网络用户界面提供的工具运行下一个命令:

   $ node build-sart-n-run

对不起,如果我的英语水平很好:)