Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import { useState, useEffect } from "react";
- import Router from "next/router";
- const Layout = props => {
- const [isLoading, setIsLoading] = useState(false);
- useEffect(() => {
- const updateLoadingStatus = () => setIsLoading(!isLoading);
- Router.events.on("routeChangeStart", updateLoadingStatus);
- Router.events.on("routeChangeComplete", updateLoadingStatus);
- return () => {
- Router.events.off("routeChangeStart", updateLoadingStatus);
- Router.events.off("routeChangeComplete", updateLoadingStatus);
- };
- }, [isLoading]);
- return (
- <div>
- { isLoading ? <p>Loading...</p> : props.children }
- </div>
- );
- }
- export default Layout;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement