@sec-fe/sec-date-picker
TypeScript icon, indicating that this package has built-in type declarations

0.4.0 • Public • Published

时间选择器

一个时间选择器, 用于选择时间范围, 以及时间粒度.

说明

基础语法规则: [+|-]<time_integer><time_unit>@<time_modifier><time_expression>

值(time_integer)

一个整数, 表示时间的数量, 例如: 1d, 表示 1 天后, 2w 表示 2 周后.

单位(time_unit)

时间单位, 共支持 6 种时间日期单位(s/m/h/d/w/mon/q/y):

  • s: 秒
  • m: 分钟
  • h: 小时
  • d: 天
  • w: 周
  • mon: 月
  • q: 季度
  • y: 年

例如: -1h, 表示 1 小时前, 2w, 表示 2 周后.

修饰符(time_modifier)

  • 常规修饰符: (now/@s/@m/@h/@d/@w/@mon/@q/@y/@w0~w7)

    • now: 当前时间; 例如: now > 2023-09-01 10:16:07
    • @s: 当前秒开始; 例如: @s > 2023-09-01 10:16:07
    • @m: 当前分钟开始; 例如: @m > 2023-09-01 10:16:00
    • @h: 当前小时开始; 例如: @h > 2023-09-01 10:00:00
    • @d: 当前天开始; 例如: @d > 2023-09-01 00:00:00
    • @w: 当前周开始(周一); 例如: @w > 2023-08-28 00:00:00
    • @mon: 当前月开始; 例如: @mon > 2023-09-01 00:00:00
    • @q: 当前季度开始; 例如: @q > 2023-07-01 00:00:00
    • @y: 当前年开始; 例如: @y > 2023-01-01 00:00:00
    • @w0~w7: @w0/@w7 表示周日, @w1 表示周一, 以此类推; 例如: @w1 > 2023-08-28 00:00:00
  • 扩展修饰符: (@ts/@m0~59/@h0~24/@mon1~12/@q1~4)

    • @ts: 13 位时间戳, 例如: 1693535243018@ts > 2023-09-01 10:27:23;
    • @m0~59: 每分钟开始, 例如: @m0 > 2023-09-01 10:00:00;
    • @h0~24: 每小时开始, @24 特殊表示 23:59:59, 例如: @h0 > 2023-09-01 00:00:00;
    • @mon1~12: 每月份开始, 例如: @mon1 >2023-01-01 00:00:00;
    • @q1~4: 每季度开始, 例如: @q1 > 2023-01-01 00:00:00;

表达式(time_expression)

计算表达式, 用于计算时间, 例如:

  • @d+1h > 2023-09-01 01:00:00
  • @d-1h > 2023-08-31 23:00:00
  • @d-1d-1s > 2023-08-30 23:59:59

示例

表达式 说明 结果
now 当前时间 2023-09-01 10:16:07
-1h 1 小时前 2023-09-01 09:16:07
@d 当天开始 2023-09-01 00:00:00
-1d@d 昨天开始 2023-08-31 00:00:00
@w3 本周三 2023-08-30 00:00:00
-1w@w3 上周三 2023-08-23 00:00:00
-1w@d 一周前 2023-08-25 00:00:00
-1mon@mon 上个月开始 2023-08-01 00:00:00
-24h 24 小时前 2023-08-31 10:16:07
-1d@h8 昨天 8 点 2023-08-31 08:00:00
-1d@h8+5m+30s 昨天 8 点 5 分 30 秒 2023-08-31 08:05:30

Readme

Keywords

none

Package Sidebar

Install

npm i @sec-fe/sec-date-picker

Weekly Downloads

2

Version

0.4.0

License

none

Unpacked Size

97.3 kB

Total Files

7

Last publish

Collaborators

  • roojay