使用vue-cli进行前端开发时,如何和后端进行匹配
使用vue前端项目开发(默认前后端分离),vue-cli脚手架run server是,nodejs会启动一个web site,此web site是基于nodejs实现的,如果后端使用java、golang、c#等实现的,此时如何请求后端的数据并进行项目的测试工作?
深入vue-cli脚手架发现,cli脚手架启动的web site默然是开启了代理的功能的,可以通过设置相关的代理信息将请求转发到对应的后端应用程序。
使用npm run server会默然加载当前工作路径下的package.json文件夹。同时,还会加载用户的自定义设置文件vue.config.js文件,在该文件中可以进行相应的参数设置。需要注意的是,package.json中的vuePlugins.resolveFrom会转移默然的配置文件加载信息。
详细的信息可以参考官方的文档中的配置参数(devServer.proxy)信息 参考地址:https://cli.vuejs.org/zh/config/#devserver
//研究源码一些相关信息
service.content //work space
service.pkgContext //初始默认为workspace
通过package.json中的vuePlugins.resolveFrom可以进行调整
service.pkg //package.json信息 依赖于service.pkgContext
service.plugins =
//cli
id: "built-in:commands/serve
id: "built-in:commands/build
id: "built-in:commands/inspect
id: "built-in:commands/help
id: "built-in:config/base
id: "built-in:config/css
id: "built-in:config/dev
id: "built-in:config/prod
id: "built-in:config/app
//package.json :
devDependencies节点
dependencies节点
vuePlugins.service节点(array)
this.modes = //from plugins defaultModes
this.pluginsToSkip = // args['skip-plugins']
this.projectOptions= resolved
fileconfig=vue.config.js
pkgconfig = package.json.vue
resolved = fileconfig > pkgconfig > args
//serve.js
api : pluginsApi{ id, serviceApp }
options:serviceApp.projectOptions