我在我的组件中使用了多个@react-native-community/datetimepicker,当用户选择日期时,它们都调用相同的函数。
如何获取用户使用的datetimepicker的ID或名称?我检查了一下,但找不到ID或name属性。日期选择器如下所示:
<DateTimePicker
testID="myDate1"
value={myDateValue}
mode="date"
display="default"
onChange={this.onCalendarDateChange} />这是当用户选择日期时调用的函数:
onCalendarDateChange(event, selectedDate) {
const id = event.???
}发布于 2021-11-22 05:47:38
在使用这个包一段时间后,我意识到,其想法是在表单中有一个单独的datetimepicker,这就是为什么没有方法检索选择器的ID的原因。
我想出的一个简单的解决方案非常有效,就是在我使表单域可见时,捕获datetimepicker正在为其收集数据的表单域的名称。
在我的例子中,我有两个表单域,我需要一个datetimepicker,即startDate和endDate,一开始我试图在表单中使用两个不同的datetimepicker,这是完全不必要的。
我现在使用单个datetimepicker,当用户单击日历图标以显示datetimepicker时,我设置表单域的名称,即state中的startDate或endDate。一旦用户选择了日期,就会调用onCalendarDateChange(),我只需从state读取调用datetimepicker的startDate或endDate字段。
因此,任何需要为多个表单域使用datetimepicker的人只需使用一个datetimepicker就可以使用我的或类似的方法来完成工作。
发布于 2021-11-21 02:16:05
根据它,document事件是一个具有两个键的对象
const event: AndroidEvent = {
type: 'set',
nativeEvent: {},
};它不会返回任何ID来捕获它
https://stackoverflow.com/questions/70051047
复制相似问题