使用 vue-cli 可以像这样配置 webpack devServer.before函数:
devServer: {
before(app) {
app.get('/apiUrl', (req, res) => res.send(process.env.API_URL))
}
},
如何配置Vite 开发服务器以获得相同的行为?
(我尝试了该proxy
选项,但它不起作用。)
使用 vue-cli 可以像这样配置 webpack devServer.before函数:
devServer: {
before(app) {
app.get('/apiUrl', (req, res) => res.send(process.env.API_URL))
}
},
如何配置Vite 开发服务器以获得相同的行为?
(我尝试了该proxy
选项,但它不起作用。)
根据这个 github 问题,环境变量在文件中不可访问vite.config.js
(在 也不在vite.config.ts
)。但是,此问题中的讨论还提到了您可以在此文件中使用的解决方法:
import { defineConfig, loadEnv } from 'vite'
import vue from '@vitejs/plugin-vue'
export default defineConfig(({mode}) => {
const env = loadEnv(mode, process.cwd());
return {
plugins: [
vue(),
],
server: {
proxy: {
'^/apiUrl': {
target: env.VITE_API_TARGET,
changeOrigin: true,
}
}
},
}
})
请注意,变量名称必须以此开头VITE_
才能起作用。