React Material Design:在类组件中使用带有 redux 的 React Material Design 自定义样式

Posted

技术标签:

【中文标题】React Material Design:在类组件中使用带有 redux 的 React Material Design 自定义样式【英文标题】:React Material Design : using react material design custom style with redux in class component 【发布时间】:2020-08-21 19:46:55 【问题描述】:

我正在使用 react material design 和 redux,并且我有一个类组件。我正在尝试向 rmd 快速拨号组件添加一些自定义样式,这是我的组件:

import React,  Component  from 'react';
import  connect  from 'react-redux';
import  withStyles, makeStyles  from '@material-ui/core/styles';
import  SpeedDial, SpeedDialIcon, SpeedDialAction  from '@material-ui/lab';

const useStyles = makeStyles((theme) => (
    speedDial: 
        position: 'absolute'
      
));

const actions = [...]

class ToolBar extends Component 

    render() 
        let  classes  = this.props;
        return (
            <SpeedDial
                ariaLabel="SpeedDial Tools"
                icon=<SpeedDialIcon />
                className=classes.speedDial
                open=this.state.open>
                actions.map((action) => (
                    <SpeedDialAction
                        key=action.name
                        icon=action.icon
                        tooltipTitle=action.name
                    />
                ))
            </SpeedDial>
        )
    


const mapStateToProps = state => (...)
export default connect(mapStateToProps, null)(withStyles(useStyles)(ToolBar))

我已经根据 rmd 文档完成了主题配置的所有其他事情,但是 这是我得到的结果:

类将被添加,但 css 无法正确呈现

【问题讨论】:

【参考方案1】:

你不应该使用类组件和材质 UI,你应该将你的组件重构为功能性的。

【讨论】:

但我需要这种方式,我认为根据文档不会避免它 也许这很有用。 ***.com/questions/56554586/…【参考方案2】:

通过这些更改可以正常工作:

const styles = theme => (
    speedDial: 
        position: 'absolute'
    
);

和:

export default connect(mapStateToProps, null)(withStyles(styles,  withTheme: true )(ToolBar))

【讨论】:

以上是关于React Material Design:在类组件中使用带有 redux 的 React Material Design 自定义样式的主要内容,如果未能解决你的问题,请参考以下文章

Google--Material Design UI素材库React版

Material Design Components React 风格按钮

基于React Native的Material Design风格的组件库 MRN

npm install 后如何引用 Google Material-Design-Icons?

react 各种UI框架

react 常用的ui库