Я использую NextJS и Heroku.
В индексе - Первая загрузка возвращает данные, которые я извлек в getInitialProps, но в обычной функции я получаю сообщение об ошибке, потому что env vars отсутствуют.
Когда я перехожу на другую страницу, я получаю ту же ошибку, но когда я обновляюсь, я вижу данные, извлеченные в getInitialProps.Но опять же, в обычной функции я получаю сообщение об ошибке для отсутствующих переменных env.
Локально это работает.Я попробовал dotenv-webpack, но это не помогает.Я добавил конфигурационные переменные в Heroku.
Есть идеи?
Это мой файл next.config.js:
const { parsed: localEnv } = require('dotenv').config()
const webpack = require('webpack')
const Dotenv = require('dotenv-webpack')
const path = require('path')
module.exports = {
//target: 'serverless',
webpack(config) {
config.plugins.push(new webpack.EnvironmentPlugin(localEnv))
config.node = {fs: "empty"};
config.plugins = config.plugins || []
config.plugins = [
...config.plugins,
// Read the .env file
new Dotenv({
path: path.join(__dirname, '.env'),
systemvars: true
})
]
return config
},
publicRuntimeConfig: {
ADDRESS: process.env.ADDRESS,
API_TOKEN: process.env.API_TOKEN,
INFURA_API_KEY: process.env.INFURA_API_KEY
}
}