我有多个页面,每个页面都有不同的主题或不同的颜色板。在react和material ui中处理它的最佳方法是什么?
我尝试使用CustomThemeProvider,就像这篇教程中所说的一样:
但在加载时,我仍然看到以前的主题。
因此,我实现了以下主题:
创建了两种主题,一个用于主页,一个用于登录,并通过createMuiTheme()在theme文件夹中分别管理。
这是一个好的解决方案吗?可以控制主题吗?
app.ts
return (
<>
{isReady === true ? (
<ConnectedRouter history={history}>{routes}</ConnectedRouter>
) : (
<Spinner />
)}
</>
);
home.ts
return (
<ThemeProvider theme={mainTheme}>
<CssBaseline />
<Header />
<main>
<Container maxWidth="xl">
.....
</Container>
</main>
</ThemeProvider>
);
登录页面
<ThemeProvider theme={loginTheme}>
<CssBaseline />
login stuff
<ThemeProvider />