@Folzy

Почему next.js при билде выдает ошибку Cannot destructure property 'store' of 'useReduxContext2(...)' as it is null?

Когда запускаю приложение в dev режиме, всё работает корректно, но вот при запуске билда выходит ошибка:

Cannot destructure property 'store' of 'useReduxContext2(...)' as it is null

В интернете дают совет добавить провайдер в _app.js, но я использую app router, и про него в интернете ничего нет, chat gpt тоже не помог.

Код.
  • Вопрос задан
  • 83 просмотра
Пригласить эксперта
Ответы на вопрос 1
Mike_Ro
@Mike_Ro
Python, JS, WordPress, SEO, Bots, Adversting
А если так?
// app/layout.js
'client'

import type { Metadata } from "next";
import { Inter } from "next/font/google";
import "@/base.scss";
import { Provider } from 'react-redux';
import { store } from '../redux/store';
import Layout from "@/components/Layout";

const inter = Inter({ subsets: ["latin"] });

export const metadata: Metadata = {
  title: "Home | PlayCloud",
  description: "Unique web application for listening to a huge amount of music in a unique format",
}

export default function RootLayout({ children }: Readonly<{ children: React.ReactNode }>) {
  return (
    <html lang="en">
      <body className={inter.className}>
        <Provider store={store}>
          <Layout>
            {children}
          </Layout>
        </Provider>
      </body>
    </html>
  )
}

Cannot destructure property 'store' of 'useReduxContext2(...)' as it is null?

Вам не нужно использовать useReduxContext2, потому что у Вас уже есть Provider, который делает контекст доступным для всех вложенных компонентов. Используйте useSelector и useDispatch из react-redux для получения доступа к состоянию и отправки в Redux.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы