Laravel 5.4项目中的Vue.js组件在本地工作,但不在Heroku

时间:2018-01-08 18:00:41

标签: laravel heroku npm vue.js

问题: 我有一个带Vue.js的Laravel 5.4项目,并使用Heroku进行部署。一切都运行良好,直到今天我注意到我在Vue组件文件中所做的更改在本地工作正常,但没有反映在Heroku上。

过去这种情况发生在我忘记运行npm run build时,但是当我执行npm run build时,我得到了以下错误:

npm ERR! Linux 4.10.0-42-generic
npm ERR! argv "/home/caseydemo/.nvm/versions/node/v6.11.4/bin/node" "/home/caseydemo/.nvm/versions/node/v6.11.4/bin/npm" "run" "build"
npm ERR! node v6.11.4
npm ERR! npm  v3.10.10

npm ERR! missing script: build
npm ERR! 
npm ERR! If you need help, you may report this error at:
npm ERR!     <https://github.com/npm/npm/issues>

npm ERR! Please include the following file with any support request:
npm ERR!     /home/caseydemo/Documents/gotcha/npm-debug.log

我不知道该怎么做,所以我尝试删除我的节点模块并使用以下命令重新安装它们:

rm -rf node_modules
npm install 

在npm install ran之后出现以下错误:

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 (node_modules/chokidar/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 (node_modules/webpack-dev-server/node_modules/chokidar/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})

我目前正在运行Ubuntu 16.04 Xenial。不确定下一步该怎么做,感谢任何帮助。

这是我的package.json文件:

{
  "private": true,
  "scripts": {
    "dev": "npm run development",
    "development": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
    "watch": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --watch --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
    "watch-poll": "npm run watch -- --watch-poll",
    "hot": "cross-env NODE_ENV=development node_modules/webpack-dev-server/bin/webpack-dev-server.js --inline --hot --config=node_modules/laravel-mix/setup/webpack.config.js",
    "prod": "npm run production",
    "production": "cross-env NODE_ENV=production node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js"
  },
  "devDependencies": {
    "axios": "^0.16.2",
    "bootstrap-sass": "^3.3.7",
    "cross-env": "^5.0.1",
    "jquery": "^3.1.1",
    "laravel-mix": "^1.0",
    "lodash": "^4.17.4",
    "vue": "^2.1.10"
  },
  "dependencies": {
    "hover.css": "^2.2.1"
  }
}

1 个答案:

答案 0 :(得分:1)

您的脚本中没有定义方法build,您正在寻找prodproduction

npm run production

您收到的错误消息告诉您:

npm ERR! missing script: build

如果您查看scripts中的package.json定义,您会发现确定没有定义build