将代理地址配置在 .env.development 或者其他文件中,然后在 vue.config.js 中使用 fs 读取配置文件中的代理地址。
一定要用 fs 去读取, 不能直接用process.env.VUE_APP_PROXY_API_ROOT,或者通过导入引入, 因为这个变量是在编译时就已经确定了,而不是在运行时。
proxy: {
"/api": {
target: process.env.VUE_APP_PROXY_API_ROOT,
changeOrigin: true,
pathRewrite: {
"^/api": "",
},
router: (req) => {
return /^VUE_APP_PROXY_API_ROOT=(\S*)/m.exec(fs.readFileSync(".env.development", "utf-8"))[1];
},
},
},
在Vue项目的开发环境中,由于process.env.VUE_APP_PROXY_API_ROOT在编译时已确定,无法在运行时动态更改,因此文章介绍了如何使用fs模块读取.env.development文件,动态获取并设置代理地址,以实现更灵活的API请求转发。
621

被折叠的 条评论
为什么被折叠?



