Мое приложение vue.js + Sails.js не будет работать на Heroku - PullRequest
0 голосов
/ 12 февраля 2019

Я создал веб-приложение (интерфейс Vue JS, сервер Sails JS), которое отлично работает на моем локальном сервере.Однако, когда я пытаюсь запустить его, я получаю ошибки;в основном ошибки зависимости.Я развернул его на Heroku.Мне пришлось создать файл package.json в корне папки моего приложения.

Вот как выглядит дерево приложения:

root folder
    |---frontend
        |---package.json file
    |---backend
        |---package.json file
    |---package.json file

Я создал приложение внешнего интерфейса с помощью vue cli webpack.

"name": "zigy-demo-store",
"version": "1.0.0",
"description": "A demo online store with Admin functions.",
"main": "backend/app.js",
"scripts": {
     "dev": "cd backend && npm i && npm run dev & cd frontend && npm i && npm run build",
     "start": "cd backend && npm i && npm run dev & cd frontend && npm i && npm start"
},
"dependencies": {
    "sails": ""
},
"repository": {
    "type": "git",
},
"engines": {
  "node": "^10.15",
  "npm": "6.7.0"
}
}

Вот некоторые ошибки

0 info it worked if it ends with ok
1 verbose cli [ '/usr/bin/node', '/home/adesuwa/.npm-global/bin/npm', 'start' ]
2 info using npm@6.7.0
3 info using node@v10.15.0
4 verbose run-script [ 'prestart', 'start', 'poststart' ]
5 info lifecycle zigy-demo-store@1.0.0~prestart: zigy-demo-store@1.0.0
6 info lifecycle zigy-demo-store@1.0.0~start: zigy-demo-store@1.0.0
7 verbose lifecycle zigy-demo-store@1.0.0~start: unsafe-perm in lifecycle true
8 verbose lifecycle zigy-demo-store@1.0.0~start: PATH: /home/adesuwa/.npm-global/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin:/media/adesuwa/Files/Programming/Dev test/zigy-demo-store/node_modules/.bin:/home/adesuwa/dart-sass/:/home/adesuwa/.npm-global/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
9 verbose lifecycle zigy-demo-store@1.0.0~start: CWD: /media/adesuwa/Files/Programming/Dev test/zigy-demo-store
10 silly lifecycle zigy-demo-store@1.0.0~start: Args: [ '-c',
10 silly lifecycle   'cd backend && npm i && npm run dev & cd frontend && npm i && npm start' ]
11 silly lifecycle zigy-demo-store@1.0.0~start: Returned: code: 1  signal: null
12 info lifecycle zigy-demo-store@1.0.0~start: Failed to exec start script
13 verbose stack Error: zigy-demo-store@1.0.0 start: `cd backend && npm i && npm run dev & cd frontend && npm i && npm start`
13 verbose stack Exit status 1
13 verbose stack     at EventEmitter.<anonymous> (/home/adesuwa/.npm-global/lib/node_modules/npm/node_modules/npm-lifecycle/index.js:301:16)
13 verbose stack     at EventEmitter.emit (events.js:182:13)
13 verbose stack     at ChildProcess.<anonymous> (/home/adesuwa/.npm-global/lib/node_modules/npm/node_modules/npm-lifecycle/lib/spawn.js:55:14)
13 verbose stack     at ChildProcess.emit (events.js:182:13)
13 verbose stack     at maybeClose (internal/child_process.js:962:16)
13 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:251:5)
14 verbose pkgid zigy-demo-store@1.0.0
15 verbose cwd /media/adesuwa/Files/Programming/Dev test/zigy-demo-store
16 verbose Linux 4.15.0-45-generic
17 verbose argv "/usr/bin/node" "/home/adesuwa/.npm-global/bin/npm" "start"
18 verbose node v10.15.0
19 verbose npm  v6.7.0
20 error code ELIFECYCLE
21 error errno 1
22 error zigy-demo-store@1.0.0 start: `cd backend && npm i && npm run dev & cd frontend && npm i && npm start`
22 error Exit status 1
23 error Failed at the zigy-demo-store@1.0.0 start script.
23 error This is probably not a problem with npm. There is likely additional logging output above.
24 verbose exit [ 1, true ]

Ответы [ 2 ]

0 голосов
/ 14 февраля 2019

Хорошо, поэтому я просто развернул фронтенд и бэкэнд как отдельные приложения на Heroku.Я следовал этому руководству для создания веб-пакета Vue.js + на Heroku: https://codeburst.io/quick-n-clean-way-to-deploy-vue-webpack-apps-on-heroku-b522d3904bc8

Вместо того, чтобы нажимать папку внешнего интерфейса, я нажимаю только папку dist /, расположенную в папке внешнего интерфейса.Я следовал инструкциям из этой статьи, за исключением части git init.Я зашел в папку dist и вместо этого сделал там свой git init.

0 голосов
/ 13 февраля 2019

Считаю, что у меня проблемы с твоими путями.В журнале ошибок я вижу, что команда в цепочке:

cd backend && npm i && npm run dev & cd frontend && npm i && npm start

В соответствии с вашей древовидной структурой в каталоге backend нет каталога frontend, что приводит к сбою cd frontend.Попробуйте добавить ../ туда, чтобы подняться на один уровень, прежде чем перейти к frontend:

cd backend && npm i && npm run dev & cd ../frontend && npm i && npm start
...