Material ui Textfield type date, min 不工作

Mih*_*ail 5 input reactjs html5-input-date material-ui

我正在尝试从选择可以开始的位置添加一个最小日期,但该最小日期不起作用。

<TextField
    id="date"
    type="date"
    defaultValue="2017-05-24"
    minDate="24/01/2019"
    InputLabelProps={{
      shrink: true
    }}
  />
Run Code Online (Sandbox Code Playgroud)

有没有人有任何想法?

小智 7

这应该可以解决问题

<TextField
  InputProps={{inputProps: { min: "2020-05-01", max: "2020-05-04"} }}
  type="date"
  defaultValue="2019-05-24"
/>
Run Code Online (Sandbox Code Playgroud)


Rya*_*ell 3

如果您只是想利用 HTML日期属性,您可以指定minmax使用inputProps

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

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

const useStyles = makeStyles({
  input: {
    "&:valid": {
      backgroundColor: "yellow"
    },
    "&:invalid": {
      backgroundColor: "red"
    }
  }
});

function App() {
  const classes = useStyles();
  return (
    <div>
      <TextField
        InputProps={{ classes: classes }}
        type="date"
        defaultValue="2019-05-24"
        inputProps={{ min: "2019-01-24", max: "2020-05-31" }}
      />
    </div>
  );
}

const rootElement = document.getElementById("root");
ReactDOM.render(<App />, rootElement);
Run Code Online (Sandbox Code Playgroud)

编辑文本字段类型日期

您可以在此处找到有关约束验证 API 的更多信息。

如果您正在寻找功能更齐全的日期选择器,则TextField. 相反,您应该查看Material UI Pickers