我很难让占位符正确显示在我用于反应本机的此日期选择器包中...
这是我进行组件设置的方式:
_onDateChange函数:
const _onDateChange = (startTime) => {
pickDate(props.setPatrolStartTime, startTime)
this.setState({startTime: props.setPatrolStartTime})
}
日期选择器组件:
<DatePicker
//date={props.startTime}
mode="datetime"
iconComponent={ <Icon name='chevron-down' type='font-awesome' color='green'/> }
style={ styles.datePickerStyle }
placeholder={`Select Start Time`}
confirmBtnText='Confirm'
cancelBtnText='Cancel'
customStyles={{
dateInput:{
borderWidth: 0,
},
dateText: {
color: 'white',
textAlign: 'left',
fontSize: 20
},
}}
onDateChange={this._onDateChange(props.startTime) }
/>
预期的行为::我认为它将在显示日期之前显示占位符,但是在我注释掉date
道具以及在谷歌搜索和搜索之后,它将显示占位符在一段时间的stackoverflow中,我看到了很多帖子,有人说我需要绑定onDateChange属性,还有一些人要求我创建一个单独的onDateChange
函数并从prop中调用它。
实际行为: 我似乎无法弄清楚如何绑定它,并且当我尝试如上所示调用它时,它会以红色显示,表示未定义不是函数,它引用了_onDateChange。当我尝试使用占位符道具时,除非我注释掉日期道具,否则占位符将不会显示;当我这样做时,它会显示占位符,除非我设置日期,否则占位符不会更改为我的日期。设置。
在这一点上,我无法真正弄清楚自己在做错什么。谁能给我一些意见?
谢谢!
答案 0 :(得分:1)
您使用了反引号而不是普通引号,应该是
placeholder="Select start time"
上查看示例
答案 1 :(得分:1)
尝试使用placeholderText
代替placeholder
您可以从here
获取参考答案 2 :(得分:0)
placeholder
不不接受对象,但是,它需要字符串,如下所示:
placeholder="select date"
不像这样:
placeholder={"select date"}
同样,仅当this.props.date为false
答案 3 :(得分:0)
似乎是库中的错误,并且一年没有更新。如果要使用占位符阻止显示当前日期,您将需要将placeholder
设置为非空字符串,并且该字符串应该可以正常工作。
输入值仍然需要虚假才能显示占位符(例如,空字符串作为日期/时间)。