I'm using antd within my NextJs app. I placed a Layout component at the top level of my app.
/* _app.tsx */
function MyApp({ Component, pageProps }: AppProps) {
return (
<Provider store={store}>
<SideMenuLayout>
<div>Patate</div>
</SideMenuLayout>
</Provider>
);
}
/* sideMenuLayout.tsx */
const SideMenuLayout = ({ children }: SideMenuLayoutProps) => {
const [collapsed, setCollapsed] = useState(false);
const { Sider } = Layout;
return (
<Layout style={{ minHeight: "100vh" }}>
<Sider collapsible collapsed={collapsed} onCollapse={setCollapsed}>
<div className="logo" />
<Menu theme="dark" defaultSelectedKeys={["1"]} mode="inline">
<Menu.Item key="2" icon={<DesktopOutlined />}>
Play
</Menu.Item>
</Menu>
</Sider>
<Layout className="site-layout">{children}</Layout>
</Layout>
);
};
I get the error "Warning: useLayoutEffect does nothing on the server".
I understand <sider collapsible... use this useLayoutEffect. I don't understand why default mode is SSR in my case. I'm not sure how I should proceed if I wanna keep the sider collapsable.
Thanks!