B. *_*ard 2 javascript reactjs material-ui
我想用es6 类扩展Tab组件,如下所示:
import React from "react";
import {Tab} from "material-ui";
class MyTab extends Tab {
constructor(props){
super(props);
}
render(){
return super.render();
}
}
export default MyTab;
Run Code Online (Sandbox Code Playgroud)
但我收到一个错误:
Uncaught TypeError: Cannot read property 'muiTheme' of undefined
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
扩展 MUI 组件的正确方法是使用他们withStyles() 的高阶组件设计方法
import React, { Component } from "react";
import Tab from "@material-ui/core/Tab";
import { withStyles } from "@material-ui/core/styles";
const styles = theme => {
return ({
myTab: {
fontFamily: 'Courier New',
});
}
class MyTab extends Component {
render() {
return (
const {classes, ...other} = this.props
<Tab {...other} className={classes.myTab} label="Home" />
}
}
export default withStyles(styles)(MyTab);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6042 次 |
| 最近记录: |