[英]Environment variables undefined using dotenv
我有一個使用我的特定space
和accessToken
連接到Contentful
的文件。 最近,我決定使用dotenv
package 將keys
隱藏到.env
文件中。 這是我的文件的樣子:
import {createClient} from 'contentful';
require('dotenv').config();
//console.log('space = ', process.env.CONTENTFUL_SPACE);
const client = createClient({
space: process.env.CONTENTFUL_SPACE,
accessToken: process.env.CONTENTFUL_TOKEN
});
export default client;
出於某種原因, env
變量以未定義的形式出現。 目前,我的.env
文件位於根目錄下。 這是我項目的文件結構:
project
client
src
service
client.js <-- The file I pasted above
node_modules
.env
package-lock.json
package.json
我嘗試過的事情:
dotenv
並重新安裝node_modules
文件夾並重新安裝所有依賴項.env
文件移動到client
文件所在的service
文件夾下.env
文件中為我的 env 變量使用了REACT_APP_*
前綴config
調用中指定路徑所有這些解決方案都來自其他stackoverflow
問題。 幾天來,我一直在堅持這個問題,在列出的解決方案中循環並尋找其他解決方案,但仍然沒有弄清楚為什么我無法訪問我的env
變量!
因此,我嘗試以與您構建它的方式相同的方式構建示例項目,但它不起作用。 我將 .env 文件移到 /service 文件夾下,它起作用了。 我的猜測是,要求 dot env 文件應該位於包裝項目的主文件(根目錄中的主文件)以及 .env 文件中。
嘗試在配置中設置 your.env 文件的路徑。
const dotenv = require('dotenv');
dotenv.config({ path: '../../../.env' });
編輯:配置路徑
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.