【发布时间】:2018-02-05 03:33:44
【问题描述】:
我正在使用带有 material-ui v1.x beta 的 typescript 创建一个 ReactJS 入门项目。
在以下位置解释的主题:https://material-ui-1dab0.firebaseapp.com/customization/themes/ 不工作。 Typescript 抱怨属性“主题”不存在。我一直在摆弄@types/material-ui 中的 index.d.ts,将界面“muiTheme”替换为“theme”,这会导致很多其他错误。
当使用“muiTheme”属性时,错误消失了,但是只使用默认颜色,表明我的自定义主题根本没有使用。
我的代码:
import * as React from 'react';
import { MuiThemeProvider } from 'material-ui/styles';
import createMuiTheme from 'material-ui/styles/theme';
import createPalette from 'material-ui/styles/palette';
import { teal, bluegrey, red } from 'material-ui/colors';
import Button from 'material-ui/Button';
const theme: any = createMuiTheme({
palette: createPalette({
primary: teal, // Purple and green play nicely together.
accent: {
...bluegrey,
A400: '#00e677',
},
error: red,
}),
});
function Palette() {
return (
<MuiThemeProvider theme={theme}>
<div>
<Button color="primary">
{'Primary'}
</Button>
<Button color="accent">
{'Accent'}
</Button>
</div>
</MuiThemeProvider>
);
}
打字稿:
(21,23): error TS2339: Property 'theme' does not exist on type 'IntrinsicAttributes & IntrinsicClassAttributes<MuiThemeProvider> & Readonly<{ children?: ReactNod...'.
【问题讨论】:
标签: reactjs typescript themes material-ui