HarmonyOS基本UI封装——全局弹窗、日志工具类、注解功能封装(八)


highlight: arduino-light
theme: cyanosis


前言

文章系列

简介

鸿蒙基本库封装,提升鸿蒙开发效率

安装

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(){
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容