Вы должны установить начальное значение на TextField
компонент, и оно должно иметь значение prop, как показано ниже:
<TextField
type="datetime-local"
InputLabelProps={{
shrink: true
}}
value={date}
onChange={(e) => { setDate(e.target.value) } }
/>
Если вам интересно, зачем нам это нужно, посмотрите нижепример:
class SampleApp extends Component {
state = {
date : "" // setting initial state date as ""
}
render() {
return <TextField
type="datetime-local"
InputLabelProps={{
shrink: true
}}
value={this.state.date}
onChange={(e) => { this.setState({date : e.target.value}) } }
/>
}
}
В компонентах класса мы устанавливаем initialValue состояния даты "".
Так что в вашем функциональном компоненте вы должны сделать, как показано ниже:
const App2 = () => {
//if you need to set initialvalues to muliple do this
const initialVal = {
date: '',
dateField2: ''
}
const [{date, dateField2}, setDate] = React.useState(initialVal); // need to set here // setting initial state date as ""
return <TextField
type="datetime-local"
InputLabelProps={{
shrink: true
}}
value={date}
onChange={(e) => { setDate(e.target.value) } }
/>
}
Живая демоверсия , надеюсь, это поможет