#javascript #reactjs #environment-variables #next.js
Вопрос:
Я хочу установить простой логин с простым паролем в .env, но когда я пытаюсь использовать эту переменную, она принимает неопределенное значение.
Код:
.env.местный
REACT_APP_PASS_TOKEN=d61b100cacb60432f97b39b70d9ff5067242a5d9da1acad54738fc65562b8e1b
login.js
(Первый журнал печатает значение правильно, но второй-нет)
const pass = process.env.REACT_APP_PASS_TOKEN
console.log(`KEY: ${pass}`)
const handleLogin = () => {
console.log(`KEY: ${pass}`)
}
Комментарии:
1. Измените префикс
REACT_APP_
наNEXT_PUBLIC_
: Nextjs ENV docs2. Это работает!!!!!!!
Ответ №1:
Вам нужен какой-то механизм для управления этим процессом. Попробуйте с помощью dotenv. Просто установите это с помощью
npm i dotenv
После этого вам нужно подключить этот модуль к вашему основному приложению.
require('dotenv').config();
Попробуйте определить переменную и назначить ей ключ API.
const psw = process.env.REACT_APP_PASS_TOKEN;
Затем просто поменяйтесь именами var.
В результате должно получиться так:
.env
REACT_APP_PASS_TOKEN=d61b100cacb60432f97b39b70d9ff5067242a5d9da1acad54738fc65562b8e1b
login.js
const pass = process.env.REACT_APP_PASS_TOKEN;
require("dotenv").config();
const psw = process.env.REACT_APP_PASS_TOKEN;
console.log(`KEY: ${psw}`);
const handleLogin = () => {
console.log(`KEY: ${psw}`);
};
handleLogin();