NextJS 获取配置文件
对于一些配置内容,如非密码的配置项,可以写入到next.config.js
中
module.exports = { serverRuntimeConfig: { //这里的配置项只能在服务端获取到,在浏览器端是获取不到的 }, publicRuntimeConfig: { //这里的配置既可以服务端获取到,也可以在浏览器端获取到 }, }
如使用next-dynamic-antd-theme
在启动时根据 Ant Design 生成主题颜色时,要确保运行过程中可以获取该内容,便可写入到publicRuntimeConfig
中
module.exports = { serverRuntimeConfig: { //这里的配置项只能在服务端获取到,在浏览器端是获取不到的 }, publicRuntimeConfig: { //这里的配置既可以服务端获取到,也可以在浏览器端获取到 next_dynamic_antd_themes: theme, }, }
要获取内容可以采用如下的方法
import getConfig from 'next/config'; const { publicRuntimeConfig = {} } = getConfig() || {}; const { next_dynamic_antd_themes = {} } = publicRuntimeConfig;
另外,需要注意的是,如果在这里配置了这些内容,那么在部署时,必须带next.config.js
文件(不带该文件不会报错,但是publicRuntimeConfig
是undefined
)