我在 NextJs 项目上使用 NextAuth 时收到错误"Type error: Property 'session' does not exist on type '{}'."
。我正在添加session
按照此处的建议将属性添加到我的 _app.tsx 中:
https://next-auth.js.org/getting-started/example https://next-auth.js.org/getting-started/example
我还将该属性添加到我的自定义中MyApp
输入接口,但我仍然收到错误。按照我的代码:
import { NextComponentType } from "next";
import { Session } from "next-auth";
export interface CustomAppProps extends AppProps {
Component: NextComponentType & { auth?: boolean; session?: Session };
}
function MyApp({ Component, pageProps: { session, ...pageProps } }: CustomAppProps) {
//...
});
我该如何修复它?谢谢!
编辑#1(添加MyApp
用我当前的代码):
function MyApp({ Component, pageProps: { session, ...pageProps } }: CustomAppProps) {
return (
<>
<CookieConsentProvider useCookieConsentHooksOptions={{ consentCookieAttributes: { expires: 360 } }}>
<SessionProvider session={session}>
<AppContextProvider>
<Component {...pageProps} />
</AppContextProvider>
</SessionProvider>
</CookieConsentProvider>
</>
);
}
Edit #2:
function MyApp({ Component, pageProps }: AppProps) {
return (
<>
<CookieConsentProvider useCookieConsentHooksOptions={{ consentCookieAttributes: { expires: 360 } }}>
<SessionProvider session={pageProps.session}>
<AppContextProvider>
<Component {...pageProps} />
</AppContextProvider>
</SessionProvider>
</CookieConsentProvider>
</>
);
}
使用上面的代码我仍然收到 TS 错误: