So I am trying to add React-redux to my next.js app that also uses Next Auth. And seem to be unable to figure out how to get rid of the depreciation error.
my _app.tsx
:
import 'bootstrap/dist/css/bootstrap.min.css' // Import bootstrap CSS
import { SessionProvider, useSession } from 'next-auth/react'
import NavBar from '../components/NavBar'
import dynamic from 'next/dynamic'
import React from 'react'
import { wrapper } from "../store/store";
import { PersistGate } from "redux-persist/integration/react";
import { useStore } from "react-redux";
// eslint-disable-next-line @next/next/no-document-import-in-page
import { Head } from 'next/document'
const BackgroundImage = dynamic(
() => {
return import('../components/BackgroundImage')
},
{
ssr: false,
loading: () => <p>...</p>,
}
)
function MyApp({ Component, pageProps: { session, pageProps } }) {
const store: any = useStore();
return (
<PersistGate persistor={store.__persistor} loading={<div>Loading</div>}>
<SessionProvider session={session}>
{Component.auth ? (
<Auth>
<Head>
{/* eslint-disable-next-line @next/next/no-title-in-document-head */}
<title>Mobius Infernium | MC</title>
<meta
name="viewport"
content="width=device-width, initial-scale=1.0"
></meta>
</Head>
<NavBar />
<Component {...pageProps} />
<BackgroundImage />
</Auth>
) : (
<>
<NavBar />
<Component {...pageProps} />
<BackgroundImage />
</>
)}
</SessionProvider>
</PersistGate>
)
}
function Auth({ children }) {
// if `{ required: true }` is supplied, `status` can only be "loading" or "authenticated"
const { status } = useSession({ required: true })
if (status === 'loading') {
return <div>Loading...</div>
}
return children
}
export default wrapper.withRedux(MyApp)
Now I use a store file to create the wrapper which has been imported. so my error is in the app file. Any suggestions on how to fix this properly?
LOG:
ready - started server on 0.0.0.0:3000, url: http://localhost:3000
info - Loaded env from C:\Users\disda\Desktop\mobiusinferniummc.com\.env
event - compiled client and server successfully in 2.1s (647 modules)
wait - compiling /404 (client and server)...
wait - compiling / (client and server)...
event - compiled client and server successfully in 1799 ms (666 modules)
redux-persist failed to create sync storage. falling back to noop storage.
The object notation for `createSlice.extraReducers` is deprecated, and will be removed in RTK 2.0. Please use the 'builder callback' notation instead: https://redux-toolkit.js.org/api/createSlice
/!\ You are using legacy implementation. Please update your code: use createWrapper() and wrapper.useWrappedStore().
warn - Fast Refresh had to perform a full reload. Read more: https://nextjs.org/docs/messages/fast-refresh-reload
redux-persist failed to create sync storage. falling back to noop storage.
The object notation for `createSlice.extraReducers` is deprecated, and will be removed in RTK 2.0. Please use the 'builder callback' notation instead: https://redux-toolkit.js.org/api/createSlice
/!\ You are using legacy implementation. Please update your code: use createWrapper() and wrapper.useWrappedStore().
Via Active questions tagged javascript - Stack Overflow https://ift.tt/2OenTcw
Comments
Post a Comment