提问人:Dave 提问时间:10/23/2023 更新时间:10/26/2023 访问量:76
如何让我的 Ionic/React 应用程序读取/加载我的 .env 文件?
How do I get my Ionic/React app to read/load my .env file?
问:
我正在使用 Ionic 7、React 18 和包含的 dotenv 16.3。我创建了一个空白的离子应用程序,并在package.json(.env)旁边添加了一个文件
NODE_ENV=local
REACT_APP_BASE_URL=http://localhost:3000
我还创建了一个文件src/services.api.ts,其中包含
$ cat src/services/api.ts
import axios from "axios";
const api = axios.create({
baseURL: process.env.REACT_APP_BASE_URL,
});
但是,尝试加载此文件会导致
Uncaught ReferenceError: process is not defined
<anonymous> api.ts:4
使用启动应用程序后访问应用程序时出错
ionic serve
我还需要做些什么才能让离子读取我的 .env 文件?
答:
1赞
R0l
10/26/2023
#1
我假设您正在使用 Vite 来构建您的应用程序。 Vite 不使用 Webpack,因此,通常的 Webpack 全局变量(如 process)在默认情况下不可用。
Vite 在特殊对象上公开了 env 变量。import.meta.env
以下是他们的详细说明: https://vitejs.dev/guide/env-and-mode.html
评论
0赞
Dave
10/30/2023
谢谢,将 .env 属性更改为“VITE_BASE_URL=localhost:3000”并使用“mport.meta.env.VITE_BASE_URL”解决了问题。
0赞
Nallib Tala
11/15/2023
这花了我几个小时。聊天GTP甚至没有建议它
评论
api.ts
process.env.REACT_APP_VAR
process