highlight: arduino-light
theme: cyanosis
前言
BasicLibrary是一个基于API 12封装的基本库
未来的计划是将其打造成一个通用的UI组件+基本工具组件,目前正在完善UI组件,大家如果组件有什么需求,可以尽管提哦
文章系列
- HarmonyOS基本工具封装——BasicLibrary的基本使用(一)
- HarmonyOS基本UI封装——标题栏组件NavBar封装与使用(二)
- HarmonyOS基本UI封装——Cell单元格组件封装与使用(三)
- HarmonyOS基本UI封装——Dialog 弹出框、loading加载和List下拉刷新加载更多(四)
- HarmonyOS基本UI封装——ImageLoader 图片上传(五)
- HarmonyOS基本UI封装——顶部Toast、骨架屏(六)
- HarmonyOS基本UI封装——日历选择器(七)
简介
鸿蒙基本库封装,提升鸿蒙开发效率
安装
ohpm install @peakmain/library
一、功能优化
日历选择器优化
[图片上传失败...(image-26fca6-1730186254914)]
- SelectCalendarPage新增参数isShowMaxUseSelectDateCallback和isBefore6AM
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
title | string | 否 | 标题,默认文案是选择日期 |
selectedBackgroundColor | ResourceString | 否 | 选中开始或者结束日期时的背景颜色,默认值是#A78461 |
selectedBetweenBackgroundColor | ResourceString | 否 | 选中开始和结束日期之间日期的背景颜色,默认值是#1AA78461 |
isShowMaxUseSelectDateCallback | boolean | 否 | 超过30天是否显示弹窗,默认是true |
isBefore6AM | boolean | 否 | 六点之前,前一天是否可用,默认是true |
NavBar优化
[图片上传失败...(image-d06c1e-1730186254914)]
- 新增showLeftClose参数
二、全局弹窗
[图片上传失败...(image-2560a5-1730186254914)]
导入依赖
import { DialogManager} from '@peakmain/library';
构造参数
参数名 | 参数类型 | 名称 |
---|---|---|
uiContext | UIContext | 上下文 |
duration | number | 动画加载时长 |
方法
setBodyMessage
参数
参数 | 参数类型 | 默认值 | 说明 |
---|---|---|---|
title | string | "" | 标题 |
message | string | "" | 内容 |
leftText | string | 返回 | 左边按钮文案 |
leftTextColor | ResourceColor | $r("app.color.color_272a2b") | 左边按钮字体颜色 |
leftTextClick | () => void | () => {} | 左边按钮事件 |
rightText | string | 返回 | 右边按钮文案 |
rightTextColor | ResourceColor | $r("app.color.color_272a2b") | 右边按钮字体颜色 |
rightTextClick | () => void | () => {} | 右边按钮事件 |
rightTextBold | boolean | true | 右边按钮字体是否加粗,默认是 |
示例代码
let manager=new DialogManager(this.getUIContext())
manager.setBodyMessage("自定义全局弹窗","我是自定义全局弹窗内容","返回",$r("app.color.color_272a2b"),()=>{
manager.close()
},"确认",$r("app.color.color_194d53"),()=>{
new ToastManager(this.getUIContext()).showNormalMessage("确认")
})
关闭弹窗
close() :void
示例代码
manager.close()
显示弹窗
open(options?: promptAction.BaseDialogOptions):void
参数不可为空,一定不可为空
示例代码
manager.open({
alignment:DialogAlignment.Center
})
三、日志工具类
image.png
导入依赖
import { LogUtils } from '@peakmain/library'
参数
参数 | 参数类型 | 参数说明 |
---|---|---|
tag | string | tag标识默认是BasicLibrary |
domain | number | 日志输出级别,默认是 0x00AB |
close | boolean | 是否关闭日志,默认是false |
isHilog | boolean | 是否用hilog进行打印,默认是 |
showLogLocation | boolean | 是否展示点击的位置, 默认是 |
logSize | number | 打印的最大长度,默认是800 |
方法
方法名 | 参数 | 参数说明 | 说明 |
---|---|---|---|
init | LogOptions | 初始化传递参数 | 初始化 tag、domain 等属性 |
isLoggable | hilog.LogLevel | 日志级别 | 检查指定领域标识、日志标识和级别的日志是否可以打印 |
debug | message: string | object, tag?: string | message: 日志信息 | tag: 设置TAG,可为空 | debug 日志 |
info | message: string | object, tag?: string | message: 日志信息 | tag: 设置TAG,可为空 | info 日志 |
warn | message: string | object, tag?: string | message: 日志信息 | tag: 设置TAG,可为空 | warn 日志 |
error | message: string | object, tag?: string | message: 日志信息 | tag: 设置TAG,可为空 | error 日志 |
fatal | message: string | object, tag?: string | message: 日志信息 | tag: 设置TAG,可为空 | fatal 日志 |
示例代码
LogUtils.error("日志打印工具类打印错误日志")
四、注解功能封装
1. 防抖点击事件
导入依赖
import { Debounce } from '@peakmain/library';
方法上添加@Debounce
参数
参数 | 参数类型 | 必填 | 说明 |
---|---|---|---|
period | number | 是 | 抖动间隔时间 |
示例代码
@Debounce(2000)
test(){
}
2. 监听某个方法的耗时
导入依赖
import { MonitorCostTime } from '@peakmain/library';
方法上添加@MonitorCostTime
示例代码
@MonitorCostTime()
test(){
}