reactjs - 如何在 Material UI 中更改 Select 的文本、图标和下划线颜色

标签 reactjs material-ui

所以我想改变正文 , 图标 下划线 Material UI Select 组件的颜色从黑到白,如下图:

enter image description here

MenuItem 实现的选项文本颜色在默认情况下看起来不错,因为它们是白色的灰色:

enter image description here

本人原创documentation of Select没有多大帮助,因为它没有说明我应该在类中覆盖哪个 CSS 类。

import React from "react";
import ReactDOM from "react-dom";
import { withStyles } from "@material-ui/core/styles";
import FormControl from "@material-ui/core/FormControl";
import Select from "@material-ui/core/Select";
import MenuItem from "@material-ui/core/MenuItem";

const styles = theme => ({
  root: {
    background: "blue",
    backgroundColor: "blue"
  }
});

const OPTIONS = {
  A: "Option A",
  B: "Option B"
};

class App extends React.Component {
  state = {
    option: OPTIONS.A
  };
  handleOptionChange = event => {
    return this.setState({ option: event.target.value });
  };

  render() {
    const { classes } = this.props;
    return (
      <div className={classes.root}>
        <FormControl variant="outlined">
          <Select
            value={this.state.option}
            onChange={this.handleOptionChange}
            name="optionsDropdown"
          >
            <MenuItem value={OPTIONS.A}>{OPTIONS.A}</MenuItem>
            <MenuItem value={OPTIONS.B}>{OPTIONS.B}</MenuItem>
          </Select>
        </FormControl>
      </div>
    );
  }
}
const DemoApp = withStyles(styles)(App);
const rootElement = document.getElementById("root");
ReactDOM.render(<DemoApp />, rootElement);

最佳答案

通过覆盖 找到了一种方法来做到这一点根图标 类:

const styles = theme => ({
  root: {
    background: "blue",
  },
  whiteColor: {
    color: "white"
  }
});

 ... 

<Select
  classes={{
    root: classes.whiteColor,
    icon: classes.whiteColor
  }} 
/> 

https://codesandbox.io/s/x3j9lz9z2o

enter image description here

唯一需要改变的是下划线颜色。

关于reactjs - 如何在 Material UI 中更改 Select 的文本、图标和下划线颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55022493/

相关文章:

reactjs - 如何将 WebM 格式的音频输入传递给 Google Speech API

javascript - React-highcharts-官方延迟加载数据

javascript - 如何摆脱 Material UI 容器组件中的填充?

javascript - Material-ui Button onClick() causes "Uncaught TypeError: Cannot read property ' name' of undefined"错误

reactjs - 创建主题时如何在整个应用程序中自定义material-ui V1组件?

javascript - 类型 'string' 不可分配给类型 '(url: string) => string' .ts(2322)

javascript - 如何正确扩展 React Bootstrap 组件?

node.js - Remix.run 不使用 node.js 作为后端吗?

javascript - 通过在 React 中使用 useRef 钩子(Hook)获取另一个组件的宽度来调整一个组件的大小

css - Material-UI - 理解 10px 简化