concurrently 实现前后端连载启动
时间:2022-07-22
本文章向大家介绍concurrently 实现前后端连载启动,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
在做一个 Vue + koa2 技术栈的前后端项目时,常常需要通过终端分别启动前端和后端服务,通过安装 concurrently 模块,可以做到前后端连载启动。
以我项目的目录结构为例:
Project
|-- Front-end
|-- package,json
|-- Back-end
|-- package.json
首先来到 Back-end
文件夹下,安装模块:
npm install concurrently
配置前端项目的 package.json
:
"scripts": {
"dev": "vue-cli-service serve",
"start": "npm run dev"
},
配置后端项目的 package.json
:
"scripts": {
"client": "npm run start --prefix ../Admin-frontend",
"server": "nodemon app.js",
"dev": "concurrently "npm run server" "npm run client""
},
这样基本就 ok 了,说几个注意事项:
- 因为到时候是用
npm run dev
指令一键启动整个项目的,这个指令和前端项目的启动指令冲突了,所以前端项目再配置一个额外的指令start
- 执行
npm run dev
,本质上是执行npm run server
和npm run client
,前者负责用 nodemon + 后端项目入口文件(app.js
)启动后端项目,后者负责调用此前前端项目额外配置的启动指令。 -
client
指令配置的时候需要跟上前端项目根目录的路径。这是一个相对路径,比方说我如果把整个前端项目丢进Back-end
文件夹,和package.json
同一个目录,那么我这时候路径就只需要写Front-end
即可
最后 npm run dev
,看到这样的提示就说明成功了:
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Mysql几种join连接算法
- Flutter 学习笔记 16 - Hero 动画
- sdk冲突记录
- 个人账号密码管理体系(密码篇)
- 熬夜7天,我总结了JavaScript与ES的25个重要知识点!
- 【分享】MPSoC SWDT在Standalone下的应用
- 【分享】 PetaLinux工程出现大量Taskhash mismatch错误的原因
- Cypress系列(46)- then() 命令详解
- MultiDex原理
- 跨进程文件锁 - FileChannel
- 聊一聊二分查找法
- 【Ceph】集群升级之好好看ceph.conf
- Carthage使用
- java线程池(一):java线程池基本使用及Executors
- java线程池(二):聊聊newFixedThreadPool(1)和newSingleThreadExecutor()的区别