@aglyn/ shared- util- timp
从Aglyn monorepo出版到npm. 随后的版本 语义版本。 。 。 .
安装
npm install @aglyn/shared-util-timestamp
在纳秒分辨率的一分时间, JSON 塑造它序列化到,和 指定时区的日历数学。 这三所火店都没有进口 SDK 或者别的什么.
@aglyn/shared-util-timestamp - 那个 Timestamp 类
import { Timestamp } from '@aglyn/shared-util-timestamp'
await setDoc(ref, { createdAt: Timestamp.now() })
Timestamp 成员Firestore自己的时间戳有 -- seconds, (中文(简体) ),
nanoseconds, (中文(简体) ), toDate(), (中文(简体) ), toMillis(), (中文(简体) ), isEqual() - 它延伸了
内置 Date那个基地是故意的 Firestore 的客户端接受字段
值为 instanceof Date 写成一个真实的时间戳, 所以价值
从此类可以按原样写入文档, 而软件包
它本身取决于没有SDK。 Firestore拒绝一个普通的风俗类
不支持的字段值.
三名成员与 Date 目的: valueOf() 返回零加法
正确命令的绳子, toJSON() 返回时 { seconds, nanoseconds, type }, (中文(简体) ),
财务报告和审定财务报表 toString() 返回时 Timestamp(seconds=…, nanoseconds=…) 形式.
@aglyn/shared-util-timestamp/timestamp-json - 序列形状
import { timestampNowJson } from '@aglyn/shared-util-timestamp/timestamp-json'
logger.debug(timestampNowJson(), event, payload)
准确返回什么 Timestamp.now().toJSON() 返回,不导入.
需要的时候用 印花或序列化 - 一个日志行,一个排放的
jSON有效载荷——而且价值从未达到Firestore.
@aglyn/shared-util-timestamp/zoned-time ——日历数学在一个命名区域
import {
addZonedBusinessDays,
nextWeeklyOpening,
zonedDateTime,
} from '@aglyn/shared-util-timestamp/zoned-time'
zonedDateTime(Date.now(), 'America/Chicago').weekday
IANA区的墙上钟 瞬间显示出墙上的时间
发生时间(春季差距向前移动,秋季重叠取较早时间)
通过),日间界限,营业日,以及每周开放时间表.
这是一份复制 订档,CRM文摘和序列
窗口读取。 导入什么,比如 timestamp-json,以及
zoned-time.isolation.spec.ts 坚持住.
为什么 timestamp-json 是它自己的切入点
代码只印出日志行或事件对类没有用,所以
序列化形状没有它就可用. ITimestamp结构类型
安全从根处导入: 类型导入被去除.
许可证
阿帕奇2.0 (英语). 资料来源: https://github.com/aglyn/aglyn/tree/main/libs/shared/util/timestamp 互联网档案馆的存檔,存档日期2013-12-11