📅  最后修改于: 2023-12-03 14:44:53.706000             🧑  作者: Mango
React Native是一款基于React的应用程序框架,它可以用JavaScript编写原生应用程序。在React Native中,您可以使用DatePicker组件选择日期和时间。
在React Native应用程序中使用DatePicker组件之前,您需要先安装它。您可以使用npm或yarn来安装DatePicker组件。
使用npm:
npm install @react-native-community/datetimepicker --save
使用yarn:
yarn add @react-native-community/datetimepicker
在您的React Native项目中,您可以使用以下代码导入DatePicker组件:
import React, { useState } from 'react';
import { View, Text, Platform, TouchableOpacity } from 'react-native';
import DateTimePicker from '@react-native-community/datetimepicker';
const DatePicker = () => {
const [date, setDate] = useState(new Date());
const [show, setShow] = useState(false);
const onChange = (event, selectedDate) => {
const currentDate = selectedDate || date;
setShow(Platform.OS === 'ios');
setDate(currentDate);
};
const showDatepicker = () => {
setShow(true);
};
return (
<View>
<TouchableOpacity onPress={showDatepicker}>
<Text>{`Selected date: ${date.getDate()} ${date.getMonth()} ${date.getFullYear()}`}</Text>
</TouchableOpacity>
{show && (
<DateTimePicker
testID="dateTimePicker"
value={date}
mode="date"
is24Hour={true}
display="default"
onChange={onChange}
/>
)}
</View>
);
};
export default DatePicker;
上述代码中,在组件中首先要定义一个日期状态和一个布尔状态对话框,用来在用户选择日期时打开日期对话框。在此之后,我们使用TouchableOpacity
组件在用户按按钮时打开日期对话框。对话框显示在用户按下按钮后定义的布尔状态Show的条件下。
在日期对话框的onChange事件中,我们更新日期状态并在用户在iOS上选择日期或关闭日期选择器时隐藏日期对话框。
最后,在return语句中,我们渲染一个带有TouchableOpacity
的文本组件。当用户点击TouchableOpacity
时,组件显示一个日期对话框。要渲染日期对话框,我们使用DateTimePicker
组件并将其添加到渲染中。
DatePicker组件是React Native中使用的方便组件,用于让用户在应用程序中选择日期。借助React Native的强大功能,您可以轻松地编写可跨移动平台运行的应用程序。