Skip to content

Instantly share code, notes, and snippets.

@johnpolacek
Created May 17, 2020 20:54
Show Gist options
  • Save johnpolacek/41a5a54f377e2ed5ae6463c91f67f863 to your computer and use it in GitHub Desktop.
Save johnpolacek/41a5a54f377e2ed5ae6463c91f67f863 to your computer and use it in GitHub Desktop.
Moving your context providers into _app.js prevents re-rendering of your context consuming components when navigating between pages in Next.js.
import { ThemeProvider } from "theme-ui"
import theme from "../components/theme"
import { UserProvider } from "../components/context/UserContext"
function MyApp({ Component, pageProps }) {
return (
<ThemeProvider theme={theme}>
<UserProvider user={pageProps.user}>
<Component {...pageProps} />
</UserProvider>
</ThemeProvider>
)
}
export default MyApp
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment