首页 > 解决方案 > 为什么我的占位符不能正确显示?(反应本机日期选择器)

问题描述

我很难让占位符正确显示在我用于反应原生的这个 datepicker 包中......

这是我设置组件的方式:

_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函数并从道具中调用它。

实际行为: 我似乎无法弄清楚如何绑定它,当我尝试如上所示调用它时,它红屏,说未定义不是函数,引用_onDateChange。当我尝试使用占位符道具时,除非我注释掉日期道具,否则占位符不会显示,当我这样做时,它会显示占位符,除非我设置日期,占位符不会更改为我的日期放。

在这一点上,我真的无法弄清楚我做错了什么。谁能给我一些意见?

谢谢!

标签: javascriptreactjsreact-native

解决方案


尝试使用placeholderText而不是placeholder

您可以从这里获得参考


推荐阅读