【发布时间】:2021-02-19 14:37:40
【问题描述】:
我想在三个页面之间共享数据(这些是网络应用程序的核心),但我也有一堆不关心这些数据的博客页面。我看过的任何地方都建议将 Provider 放在 _app.tsx 文件中。如果我理解正确,如果我将MyApp 与提供者包装在一起,如果有人直接访问www.myurl.com/blog/my-blog-1(来自谷歌),那将导致提供者运行其功能;即使该页面不会调用 useContext
如何在 Provider 中只包装三个页面而忽略博客页面?
例如:
- www.myurl.com -> 我希望它使用来自提供者的共享数据
- www.myurl.com/my-functionality -> 我希望它使用来自提供者的共享数据
- www.myurl.com/profile->我希望它使用来自提供者的共享数据
- www.myurl.com/blog/* -> 我不希望它调用身份验证提供程序中的函数
这是我的_app.tsx 的样子:
import { AppProps } from 'next/app'
import '../styles/index.css'
export default function MyApp({ Component, pageProps }: AppProps) {
return <Component {...pageProps} />
}
【问题讨论】:
标签: reactjs react-hooks next.js use-context