我知道在createMuiTheme()
函数中,您可以像这样更新断点的值。
const theme = createMuiTheme({
breakpoints: {
values: {
xs: 0,
sm: 600,
md: 960,
lg: 1280,
xl: 1920,
},
},
})
我还知道Material UI(相对地)最近改变了它,你可以为断点添加自定义值。
breakpoints: {
values: {
tablet: 640,
laptop: 1024,
desktop: 1280,
},
},
});
但是,我使用的是Typescript,无法通过重写断点值使其工作,如下所述:
declare module "@material-ui/core/styles/createBreakpoints"
{
interface BreakpointOverrides
{
xs: false; // removes the `xs` breakpoint
sm: false;
md: false;
lg: false;
xl: false;
tablet: true; // adds the `tablet` breakpoint
laptop: true;
desktop: true;
}
}
而得到的错误是Type '{ tablet: number; laptop: number; desktop: number; }' is not assignable to type 'BreakpointValues'. Object literal may only specify known properties, and 'tablet' does not exist in type 'BreakpointValues'.
不知道我做错了什么?任何帮助都将不胜感激。
3条答案
按热度按时间66bbxpm51#
我正在使用typescript和断点MaterialUI,我认为您需要导入和修改一些接口,如文档所述(https://material-ui.com/guides/typescript/# customization-of-theme)。例如,我有一个Theme.tsx,如下所示:
ivqmmu1c2#
我发现问题是由于material-ui的版本。4.9.9版本的@material-ui/core会导致错误信息。当我更新到4.11.0时,它可以正常工作。
8ftvxx2r3#
我一直在努力解决这个问题,但我想我已经找到了一种使用ThemeOptions全局更改/自定义断点的有效方法。