跳过主要内容
返回插件
@capgo/capacitor-date-picker
教程
@capgo/capacitor-date-picker

日期选择器

原生日期、时间、日期时间、年月和范围选择器,适用于iOS、Android和Web

指南

日期选择器教程

在设备上测试

Download the Capgo app, then scan the QR code.

日期选择器插件预览二维码code

使用@capgo/capacitor-date-picker

@capgo/capacitor-date-picker 在iOS和Android上为Capacitor应用添加原生日期、时间、日期时间、年月和范围选择器,并在Web上提供匹配的fallback。

本插件是Capgo维护的替代方案 @capacitor-community/date-picker本插件是GitHub维护的替代方案。我们关注社区报告、快速修复问题并发布更新,而不是让GitHub问题长时间打开。

安装

npm install @capgo/capacitor-date-picker
npx cap sync

原生选择器演示

iOS Android
capgo/capacitor-date-picker的动画iOS演示:打开、选择日期并关闭 capgo/capacitor-date-picker的动画Android演示:打开、选择日期并关闭

原生选择器截图

iOS Android
iOS截图:@capgo/capacitor-date-picker Android截图:@capgo/capacitor-date-picker

选择一个日期

import { DatePicker } from '@capgo/capacitor-date-picker';

const result = await DatePicker.present({
  mode: 'date',
  date: '2026-05-27',
  min: '2026-01-01',
  max: '2026-12-31',
  format: 'yyyy-MM-dd',
  title: 'Select date',
});

console.log(result.value);

选择一个时间

const result = await DatePicker.present({
  mode: 'time',
  is24h: true,
  minuteStep: 15,
  format: 'HH:mm',
  title: 'Select time',
});

选择一个时间段

const range = await DatePicker.presentRange({
  start: '2026-05-01',
  end: '2026-05-27',
  format: 'yyyy-MM-dd',
  startTitle: 'Start date',
  endTitle: 'End date',
});

console.log(range.start, range.end);

关闭一个激活的选择器

await DatePicker.hide();

解决的问题

  • Capacitor 8支持
  • Web实现与之相同 present() API.
  • 程序化 hide().
  • 对话标题支持。
  • iOS旋转安全布局、地区处理和 yearAndMonth 模式。
  • 更安全的日期解析和日期时间区处理。
  • Android嵌套选项、 is24h对话布局处理和UI线程对话处理。
  • 分钟步骤和日期范围选择。

全参考