在 JS 代码中编写 CSS 以从 TextField 中删除箭头按钮

use*_*199 3 javascript css reactjs material-ui react-with-styles

我正在使用 React 和 Material-UI 构建一个网页。我有一个 TextField 元素,我想删除箭头按钮 - 如果我使用 CSS,我将使用以下代码:

input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
Run Code Online (Sandbox Code Playgroud)

但是我想在使用 .js 的 JS 中使用 CSS 来设置页面样式export default withStyles(styles)(FormPersonalDetails)。我该怎么做呢?`

const styles = theme => ({
    number: {
        // styling code goes here//
    }
});
Run Code Online (Sandbox Code Playgroud)

渲染()函数:

const { classes } = this.props;
return (
    <TextField className={classes.number} />
)
Run Code Online (Sandbox Code Playgroud)

Rya*_*ell 6

有几个语法选项。我在下面包含了两个选项。第一个使用classNameonTextField然后针对后代input元素。第二个通过将 className 直接应用于input元素TextField inputProps属性。

&是在这两个用于指所述亲本选择器(即这个类被施加到元件)。

import React from "react";
import ReactDOM from "react-dom";

import TextField from "@material-ui/core/TextField";
import { withStyles } from "@material-ui/core/styles";

const styles = theme => ({
  number: {
    "& input::-webkit-outer-spin-button, & input::-webkit-inner-spin-button": {
      "-webkit-appearance": "none",
      margin: 0
    }
  },
  input: {
    "&::-webkit-outer-spin-button, &::-webkit-inner-spin-button": {
      "-webkit-appearance": "none",
      margin: 0
    }
  }
});

function App({ classes }) {
  return (
    <div className="App">
      <TextField type="number" className={classes.number} />
      <br />
      <TextField type="number" inputProps={{ className: classes.input }} />
    </div>
  );
}
const StyledApp = withStyles(styles)(App);
const rootElement = document.getElementById("root");
ReactDOM.render(<StyledApp />, rootElement);

Run Code Online (Sandbox Code Playgroud)

编辑 TextField 删除旋转按钮