vue cli 项目 怎么让修改 devserver 地址不需要重启

将代理地址配置在 .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,vue.js,javascript,前端)