Next.js - анонимные стрелочные функции заставляют Fast Refresh не сохранять состояние локального компонента (предупреждение)
В настоящее время у меня появляется это предупреждение, указывающее на безымянный объект в файле конфигурации, и присвоение ему имени не устраняет предупреждение. Ниже приводится подробное предупреждение и примеры.
Предупреждение:
Anonymous arrow functions cause Fast Refresh to not preserve local component state.
Please add a name to your function, for example:
Before
export default () => <div />;
After
const Named = () => <div />;
export default Named;
До:
export const = {
apiUrl: process.env.NEXT_PUBLIC_API_URL as string,
commitRef: process.env.NEXT_PUBLIC_VERCEL_GIT_COMMIT_REF as string,
ldSdkKey: process.env.NEXT_PUBLIC_LD_SDK_KEY as string,
imgixBaseUrl: process.env.NEXT_PUBLIC_IMGIX_BASE_URL as string,
imgixApiKey: process.env.NEXT_PUBLIC_IMGIX_API_KEY as string,
imgixResourceID: process.env.NEXT_PUBLIC_IMGIX_RESOURCE_ID as string,
};
Попытка разрешения ./src/config.ts:
const AppConfig = {
apiUrl: process.env.NEXT_PUBLIC_API_URL as string,
commitRef: process.env.NEXT_PUBLIC_VERCEL_GIT_COMMIT_REF as string,
ldSdkKey: process.env.NEXT_PUBLIC_LD_SDK_KEY as string,
imgixBaseUrl: process.env.NEXT_PUBLIC_IMGIX_BASE_URL as string,
imgixApiKey: process.env.NEXT_PUBLIC_IMGIX_API_KEY as string,
imgixResourceID: process.env.NEXT_PUBLIC_IMGIX_RESOURCE_ID as string,
};
export default AppConfig;
Надеюсь, кто-то другой испытал это и нашел решение.
1 ответ
Оказывается, проблема заключалась в том, что наша старая версия Next.js не указывала на правильную причину предупреждения, но по-прежнему выдавала предупреждение. Обновление затем привело меня к коду проблемы, и я смог ее решить.