【发布时间】:2018-06-29 18:01:43
【问题描述】:
我正在尝试在日期选择器上显示验证错误消息,就像我们使用 errorText 和 errorStyle 道具对 TextField 所做的一样,但验证错误消息不适用于 DatePicker。
我使用的是material-ui版本“^0.18.7”。
请在下面找到完整的功能。我不确定如何实现这一点。我也明白 errorText 和 errorStyle 不是 DatePicker 的有效道具。认为它适用于日期选择器,但事实并非如此。有没有办法做到这一点。
import DatePicker from 'material-ui/DatePicker';
constructor(props){
super(props)
const dateYesterday = new Date();
dateYesterday.setDate(dateYesterday.getDate() - 1);
this.state={
dob: null,
dobError: '',
dateYesterday: dateYesterday
}
this.changeDateOfBirth = this.changeDateOfBirth.bind(this)
}
changeDateOfBirth = (evt, date) => {
if(date == null || date == undefined){
this.setState({
dobError: 'Please select your date of birth'
});
}else{
this.setState({
dobError: '',
dob: date
});
}
}
const errorStyle = {
display: 'table'
}
<DatePicker
dialogContainerStyle={{position: 'absolute'}}
errorText={this.state.dobError}
errorStyle={errorStyle}
inputStyle={myTheme.inputStyleText}
underlineStyle={myTheme.underlineStyle}
underlineFocusStyle={myTheme.underlineStyle}
floatingLabelStyle={myTheme.floatingLabelStyle}
floatingLabelText="Date Of Birth"
hintText="Select Date Of Birth"
container="inline"
locale="en-US"
firstDayOfWeek={0}
autoOk={true}
value={this.state.dob}
onChange={this.changeDateOfBirth}
defaultDate={this.state.dateYesterday}
>
</DatePicker>
请提出建议。
【问题讨论】:
-
如果你可以更新到 v1,
error属性在日期选择器上可用。 -
不,我无法更新到 v1。我的项目很大。如果你看 v1,一切都变了,它是全新的。如果我必须更新到 v1,那么我必须重新从头开始更改一切。有没有办法在不升级到 v1 的情况下解决这个问题?
-
我可以使用 Snackbar 栏显示错误消息,但我想在 datepicker 下划线下方显示正常错误消息。由于我已经在使用快餐栏来显示服务器响应,所以我也不能将其用于验证消息。
标签: reactjs material-ui