我在创建一个React应用程序和超级数据库。
当我将supabaseURL放入database.js
文件时,他会读取它,但由于我还必须保护我的私有API密钥,他会提到:
ts:87未捕获的错误:supabaseKey是必需的。
不知何故,他不读.env
或.env.local
文件。检查我的代码如下:
Database.js:
import { createClient } from '@supabase/supabase-js
const supabaseUrl = process.env.REACT_APP_SUPABASE_URL;
const supabaseKey = process.env.REACT_APP_SUPABASE_KEY;
export const supabase = createClient(supabaseUrl, supabaseKey)`
我的env变量:
REACT_APP_SUPABASE_URL="myurl"
REACT_APP_SUPABASE_KEY="mykey"
.env
和env.local
我都试过了
3条答案
按热度按时间o2rvlv0m1#
在您的情况下,如果您使用React并希望访问. env.local,React有自己的“dotenv”模块,您不需要导入它,当您放入. env.local文件时,不要忘记删除字符串引号“”,如下所示:
在. env.local文件中
而不是像这样用它来连接
完成后,您需要重新启动React应用程序。
oxiaedzo2#
我无法指出问题所在,但下面是您可以查看的一些事项和解决方法
.env文件是否位于正确的目录中?
env文件应该位于项目的根目录中
解决方法,使用dotenv软件包
dotenv软件包帮助你从.env文件读取属性,你可以
然后,可以将.env变量与
process.env.{variable name}
配合使用fhity93d3#
你重新加载你的申请了吗?
请记住,环境变量是在构建时嵌入的