SuperAPI AI 工具集

1k-date-formatting

前端与建站

查看项目

更新于 10-16 00:04

技能介绍

用途:该技能用于在 OneKey 应用中统一日期与时间的显示格式,并遵循用户的语言/区域(locale)设置。适用于在 UI 组件中显示日期时间、格式化来自 API 响应的时间戳、按应用语言设置调整日期格式,以及转换日期字符串用于展示。

主要能力:提供一组日期工具函数,包括 formatDate(完整日期时间)、formatTime(仅时间)、formatRelativeDate(相对显示,如 Today、Yesterday)、formatDistanceToNow(时间距离,如 2 days ago)、formatDateFns(自定义格式模板)。支持多种选项,如 hideYear、hideMonth、hideTheYear、hideTheMonth、hideTimeForever、hideSeconds 以及 formatTemplate 自定义 date-fns 模板。工具会自动检测应用 locale 并调整格式,例如 en-US、zh-CN、de 对应不同排列。

使用方式:核心规则是禁止使用原生 JavaScript 日期方法(如 toLocaleDateString、toLocaleString、toISOString、Intl.DateTimeFormat),必须使用 OneKey 的日期工具。从 @onekeyhq/shared/src/utils/dateUtils 导入 formatDate 等函数,例如 formatDate(date, { hideSeconds: true })。在 React 组件中如需随 locale 变化动态更新,可使用 @onekeyhq/kit/src/hooks/useFormatDate 钩子。自定义格式需使用有效的 date-fns 令牌,注意格式化月份应使用 LL 而非 MM。

适用场景:交易/历史列表、ReferFriends 列表、交易历史、兑换历史等界面中的日期展示。

限制:资料未提供该技能的安装方式、收费信息、支持平台或性能数据,暂未提供。相关核心文件包括 packages/shared/src/utils/dateUtils.ts、packages/kit/src/hooks/useFormatDate.ts、packages/kit/src/hooks/useLocaleVariant.ts、packages/shared/src/locale/dateLocaleMap.ts、packages/shared/src/locale/appLocale.ts。