next.js
에서 지원하는 환경변수를 사용하기 위해서 .env.development
파일을 만들어서 위와 같이 작성했다.
name=DEVELOPMENT
NEXT_PUBLIC_API_URL=http://localhost:3001
근데, 이 변수를 컴포넌트에서 사용하고자 했을 때 undefined
가 표시된다.
const todos: NextPage = () => {
const API_URL = process.env.NEXT_PUBLIC_API_URL
console.log(API_URL) // undefined
}
브라우저에서
.env
파일을 통해 환경변수를 사용할 때는process.env.NEXT_PUBLIC_변수명
으로 이름을 지어야 한다.Node.js
환경에서는process.env.변수명
으로 변수 이름을 정한다.
next.config.js
의 내용을 수정해야 한다. 아래 내용을 추가 후 서버 off 후에 다시 on하면 정상적으로 환경변수를 사용할 수 있다.
module.exports = {
reactStrictMode: true,
// env 내용 추가
env: {
BASE_URL: process.env.BASE_URL,
},
};
정보 감사합니다 !