feat(basic): 添加 TimeHelper 时间格式化方法

- 增加 formatDate 方法支持 Date 对象和时间戳格式化
- 更新 README 和 CHANGELOG 文档
-优化 TimeHelper 类结构
这个提交包含在:
徐勤民 2025-03-11 11:03:09 +08:00
父节点 304d1b35cb
当前提交 d926fbda4f
共有 3 个文件被更改,包括 95 次插入10 次删除

查看文件

@ -2,6 +2,7 @@
------
> - 调整web相关,添加JavaScript机制,用来做H5和原生通信
> - TimerHelper添加时间格式化方法
>

查看文件

@ -105,6 +105,30 @@ import { ToolsHelper } from '@szyx/sdk_base';
ToolsHelper.getDeviceInfo()
```
#### 1.3.5.ArrayBuffer转string
```tsx
import { ToolsHelper } from '@szyx/sdk_base';
ToolsHelper.toString()
```
#### 1.3.6.获取随机数
```tsx
import { ToolsHelper } from '@szyx/sdk_base';
ToolsHelper.getUuid()
```
#### 1.3.7.防抖
```tsx
import { ToolsHelper } from '@szyx/sdk_base';
ToolsHelper.debounceHold(()=>{},300)
```
### 1.4.[ValidatorHelper](./src/main/ets/utils/ValidatorHelper.ets)
> 常用正则
@ -173,6 +197,7 @@ export class JSSdkClsManager {
}
}
```
```tsx
// 定义控制器
xc: XWebJsController = {} as XWebJsController
@ -211,6 +236,51 @@ PickerDateTimeHelper.showDateDialog({
}, this)
```
### 1.7.[TimeHelper](./src/main/ets/utils/TimeHelper.ts)
> 时间日期选择弹窗相关
>
#### 1.7.1 获取当前时间戳
```tsx
import { TimeHelper } from '@szyx/sdk_base'
TimeHelper.getTimeMillis()
```
#### 1.7.2 获取当前时间的指定格式的字符串
```tsx
import { TimeHelper } from '@szyx/sdk_base'
TimeHelper.getTime()
```
#### 1.7.3 获取指定时间的指定格式的字符串
```tsx
import { TimeHelper } from '@szyx/sdk_base'
TimeHelper.formatDate(new Date(), 'yyyy-MM-dd HH:mm:ss')
```
#### 1.7.4 获取指定时间的指定格式的字符串(时间戳参数)
```tsx
import { TimeHelper } from '@szyx/sdk_base'
TimeHelper.formatDateForTime(time, 'yyyy-MM-dd HH:mm:ss')
```
#### 1.7.4 获取指定年月天数
```tsx
import { TimeHelper } from '@szyx/sdk_base'
TimeHelper.getMonthDays()
```
## 2.[Dialog](./src/main/ets/dialog)
### 2.1.弹出list选中弹窗

查看文件

@ -34,7 +34,17 @@ export class TimeHelper {
return TimeHelper.formatDate(new Date(), format)
}
static formatDate(date: Date, format: string) {
/**
*
* @param date number类型为毫秒级时间戳
* @param format
* @returns
*/
static formatDate(date: Date | number, format: string) {
if (typeof date === 'number') {
return this.formatDate(new Date(date), format);
} else {
const replacements: { [key: string]: string } = {
yyyy: date.getFullYear().toString(),
MM: String(date.getMonth() + 1).padStart(2, "0"),
@ -45,6 +55,10 @@ export class TimeHelper {
};
return format.replace(/yyyy|MM|dd|HH|mm|ss/g, matched => replacements[matched]);
}
}
// 时间戳转指定类型字符串(毫秒级)
static formatDateForTime(time: number, format: string) {
return this.formatDate(new Date(time), format);
}