如何解决将材料 ui 从 v4 升级到 v5 后,jss-rtl 插件不起作用
我把材料ui v4升级到v5,然后jss-rtl就不能正常工作了。项目是用next js写的。 _app.js:
const jss = create({ plugins: [...jssPreset().plugins,rtl()] });
const emotionCache = {
LTR: createCache({
key: 'ltr',prepend: true,}),RTL: createCache({
key: 'css',stylisPlugins: [rtlPlugin],};
const cache = createCache({ key: 'css' });
cache.compat = true;
const selectedCache = direction !== 'rtl' ? emotionCache.LTR : emotionCache.RTL;
<StyledEngineProvider injectFirst>
<StylesProvider jss={jss}>
{/* <CacheProvider value={selectedCache}> */}
<ThemeProvider theme={themes}>
<CssBaseline />
...
</ThemeProvider>
{/* </CacheProvider> */}
</StylesProvider>
</StyledEngineProvider>
CacheProvider 是情感/反应组件。我认为它与 jss 有冲突,所以我评论了,但它没有改变。在 RTL 模式下启用 CacheProvider 时,它可以与材质组件正常工作。但是我在 jss 中编写的其他元素不会在 rtl 中翻转。我在材料 v4 中检查了这些元素有这样的类:.jss45,但在 v5 中它没有这些类,而是它们的类是这样的:.makeStyles-listContainer-201 在 RTL 模式下不会改变。>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。