链接package.json脚本以启动Express服务器和Vue应用

时间:2019-08-18 05:43:54

标签: javascript express vue.js npm npm-scripts

我已经使用Vue.js和express.js构建了一个应用程序。目前,我必须打开两个终端窗口,并在其中一个运行npm run serve,在另一个运行npm start。我想让Vue.js应用程序在同一终端中构建后运行服务器。我在此article上读到,可以通过将两个package.json脚本链接在一起来使两个脚本同时运行,但是我一生都不知道该怎么做。我的项目结构如下:

├── project
├── _frontend
|   ├── package.json
├── backend
|   ├── package.json

我尝试了以下方法:

1st try - "serve": "vue-cli-service serve && (cd ../server && npm start)"
2nd try - "serve": "vue-cli-service serve && (cd ../server && npm run start)"
3rd try - "serve": "vue-cli-service serve && (cd ../server) && npm start"

Vue.js应用程序可以正常构建和运行,但是服务器无法启动。我也尝试在服务器package.json上执行相反操作,服务器启动,但应用程序未构建。是由于文件夹设置导致我无法完成的事情,还是我做错了什么?

1 个答案:

答案 0 :(得分:2)

&&串行执行命令。 vue-cli-service serve && cd ../server && npm start无法按预期工作,因为脚本会在vue-cli-service serve停止,直到服务器关闭。

对于跨平台脚本,concurrently或其他类似程序包可用于并行执行命令:

"serve": "vue-cli-service serve",
"start": "concurrently \"npm run serve\" \"cd ../server && npm start\""