Учитывая этот DatePicker Api из NativeBase v2.5.1, как я должен фиксировать событие даты изменения с новой выбранной датой?
Если я хорошо понимаю, выбранная дата доступна только во внутреннем состоянии компонента:
setDate(date) {
this.setState({ chosenDate: new Date(date) });
}
Я полагаю, что могу использовать собственный ref api реакции, но это кажется неправильным, поскольку другие аналогичные компоненты предлагают событие onDateChange, например: реагировать-native-datepicker
Да, кажется, лучше! Почему бы не сделать это и для Android?
Исправлено с помощью v2.5.2
<DatePicker style = {{ width: 200 }} date = {this.state.date} mode = "date" placeholder = "select date" format = "YYYY-MM-DD" minDate = "2016-05-01" maxDate = "2017-11-01" confirmBtnText = "Confirm" cancelBtnText = "Cancel" onDateChange = {date => this.dateChangedHandler(date)} />Вышеупомянутое должно решить ваше требование. просто добавьте функцию dateChangedHandler ()
увидеть это docs.nativebase.io/Components.html#date-picker-def-headref





Проверьте документы для выбора даты https://docs.nativebase.io/Components.html#date-picker-def-headref
Пример примера из NativeBase KitchenSink https://github.com/GeekyAnts/NativeBase-KitchenSink/blob/master/src/screens/datepicker/index.js
Исправлено с помощью v2.5.2
@Supriya Kalghatgi, хотя я использую средство выбора даты из собственной базы, когда средство выбора даты отображается на ios, оно отображается с белым фоном вместо пользовательского интерфейса, в котором вызывается средство выбора даты. версия native-base: "2.7.2", есть ли решение или это ошибка? ,пожалуйста, проверьте
Вы можете установить,
onDateChange = {(date) => this.setDate(date)}
и убедитесь, что вы обновили версию native-base до v2.6.1
Выезд: v2.6.1
Исправлено в native-base v2.6.1 и новее.
<DatePicker
formatChosenDate = {date => {return moment(date).format('YYYY-MM-DD');}}
..... />
Я пытаюсь изменить дату по умолчанию в коде, например, При добавлении 6 месяцев к сегодняшней дате значение обновляется в состоянии, но не обновляется в компоненте (stackoverflow.com/questions/62147922/…). Любые идеи?
import {DatePicker} from 'native-base'
this.state = {
date : ''
}
render(){
console.info('selected date',this.state.date)
render(
<View>
<DatePicker
defaultDate = {new Date(1994, 3, 23)}
// minimumDate = {new Date()}
textStyle = {'#000'}
placeHolderTextStyle = {'#000'}
onDateChange = {(date) => this.setState({ date })}
/>
</View>
)
}
См. PR github.com/GeekyAnts/NativeBase/pull/1987