当前位置:首页 > React

react实现日期时间

2026-01-26 21:03:40React

实现日期时间选择器

使用 react-datepicker 库可以快速实现日期时间选择功能。该库提供了丰富的配置选项和样式支持。

安装依赖:

npm install react-datepicker date-fns

基本用法示例:

import React, { useState } from 'react';
import DatePicker from 'react-datepicker';
import 'react-datepicker/dist/react-datepicker.css';

function DateTimePicker() {
  const [startDate, setStartDate] = useState(new Date());

  return (
    <DatePicker
      selected={startDate}
      onChange={(date) => setStartDate(date)}
      showTimeSelect
      timeFormat="HH:mm"
      timeIntervals={15}
      dateFormat="MMMM d, yyyy h:mm aa"
    />
  );
}

自定义日期时间格式

通过 dateFormat 属性可以自定义显示格式:

react实现日期时间

<DatePicker
  selected={startDate}
  onChange={date => setStartDate(date)}
  dateFormat="yyyy/MM/dd HH:mm"
  showTimeSelect
/>

日期范围选择

实现一个日期范围选择器:

const [startDate, setStartDate] = useState(new Date());
const [endDate, setEndDate] = useState(null);

<DatePicker
  selectsStart
  selected={startDate}
  onChange={date => setStartDate(date)}
  startDate={startDate}
  endDate={endDate}
/>
<DatePicker
  selectsEnd
  selected={endDate}
  onChange={date => setEndDate(date)}
  startDate={startDate}
  endDate={endDate}
  minDate={startDate}
/>

禁用特定日期

使用 filterDate 属性可以禁用某些日期:

react实现日期时间

const isWeekday = date => {
  const day = date.getDay();
  return day !== 0 && day !== 6;
};

<DatePicker
  filterDate={isWeekday}
  selected={startDate}
  onChange={date => setStartDate(date)}
/>

本地化设置

通过 locale 属性支持多语言:

import { registerLocale } from 'react-datepicker';
import zhCN from 'date-fns/locale/zh-CN';
registerLocale('zh-CN', zhCN);

<DatePicker
  locale="zh-CN"
  selected={startDate}
  onChange={date => setStartDate(date)}
/>

内联模式

让日期选择器始终显示:

<DatePicker
  inline
  selected={startDate}
  onChange={date => setStartDate(date)}
/>

纯时间选择

如果只需要时间选择功能:

<DatePicker
  selected={startDate}
  onChange={date => setStartDate(date)}
  showTimeSelect
  showTimeSelectOnly
  timeIntervals={15}
  dateFormat="h:mm aa"
/>

以上实现方案提供了从基础到高级的日期时间处理功能,可以根据实际需求选择合适的配置选项。react-datepicker 还支持自定义样式、日期禁用规则、多选日期等更多功能。

标签: 日期时间
分享给朋友:

相关文章

react中monent如何获取日期

react中monent如何获取日期

使用 Moment.js 获取日期 在 React 项目中,可以通过 Moment.js 库轻松处理日期和时间。以下是几种常见的日期获取方法。 安装 Moment.js 确保项目中已安装 Momen…

vue实现彩色时间

vue实现彩色时间

实现彩色时间的Vue方案 使用动态样式绑定 在Vue中可以通过v-bind:style动态绑定样式,结合Date对象实现彩色时间显示。创建计算属性返回当前时间字符串,再根据时间数值动态生成颜色。…

vue实现日期回填

vue实现日期回填

实现日期回填的基本思路 在Vue中实现日期回填通常涉及表单数据的双向绑定,结合日期选择器组件(如Element UI的DatePicker或原生HTML的input type="date")。核心是通…

vue 时间控件实现

vue 时间控件实现

vue 时间控件实现 使用 Element UI 的 DatePicker Element UI 提供了功能丰富的日期选择组件,支持单日、日期范围、时间选择等场景。安装 Element UI 后,可以…

vue实现当前时间

vue实现当前时间

实现当前时间的Vue方法 在Vue中获取并显示当前时间可以通过以下方式实现: 方法一:使用data属性 new Vue({ el: '#app', data: { curren…

vue实现日期组件

vue实现日期组件

Vue 日期组件的实现方法 使用原生 HTML5 input[type="date"] 在 Vue 中可以直接使用 HTML5 的原生日历控件,这种方式简单但样式和功能受限。 <templa…