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 не указывала на правильную причину предупреждения, но по-прежнему выдавала предупреждение. Обновление затем привело меня к коду проблемы, и я смог ее решить.

Другие вопросы по тегам