#夏日挑战赛# HarmonyOs - ArkUI (JS) 自定义组件之计时组件 原创 精华
中软小助手
发布于 2022-7-4 09:50
浏览
4收藏
作者:陈超亮
前言
学习 HarmonyOS ArkUI(JS) 也有一段时间了,为了检验自己的成果,基于现掌握的 FA 相关知识,编写一个可能会在日常开发中遇到的简单计时器组件。
此组件基于 JS 扩展的类Web开发范式开发的组件,通过传入时间参数可以实现简单计时功能,也可以传入其他参数以显示手动控制计时和手动选择时间功能。
效果展示
props
**注意:**仅需要计时时,可直接传入时间(mSec,sec,minute,hour,targetTime,fromTime),然后传入属性autoStart='true’自动计时即可,其中fromTime、targetTime与前面的四个单位属性不能共用
参数 | 说明 | 类型 | 默认值 |
---|---|---|---|
mSec | 倒计毫秒数,如3000毫秒 | Number | 0 |
sec | 倒计秒数,如100秒 | Number | 0 |
minute | 倒计分钟数,如80分钟 | Number | 0 |
hour | 倒计小时数,如25小时 | Number | 0 |
targetTime | 目标时间,如"2022-6-21 10:00:00" | String | ‘’ |
fromTime | 开始时间,如"2022-6-21 10:00:00" | String | ‘’ |
autoStart | 自动计时 | Boolean | false |
control | 显示手动控制图标 | Boolean | false |
showAll | 显示时间选择区,点击数字开启 | Boolean | false |
millisecond | 开启毫秒级计时 | Boolean | false |
实现代码
1. 首先,将传入或者设置的时间转成毫秒数,并格式化字符串显示
2. 启动定时器
3. hml 绑定数据
4. 其他代码
4.1 手动控制 js
4.2 css
总结
到这里此组件基本完成,容易出错的点主要在定时器是否需要被清除, 相当于学习了鸿蒙的开发,自己尝试封装,让自己更加了解鸿蒙开发。欢迎各位开发者一起讨论与研究,本次分享希望对大家有所帮助,如有问题欢迎指正。
源码
更多原创内容请关注:中软国际 HarmonyOS 技术团队
入门到精通、技巧到案例,系统化分享HarmonyOS开发技术,欢迎投稿和订阅,让我们一起携手前行共建鸿蒙生态。
©著作权归作者所有,如需转载,请注明出处,否则将追究法律责任
已于2022-7-4 09:54:40修改
赞
5
收藏 4
回复
5
1
4
相关推荐
计时器,日常生活经常需要使用,收藏了