【开源三方库】Easyui:基于OpenAtom OpenHarmony ArkUI深度定制的组件框架

万冬阳

公司:中国科学院软件所

小组:知识体系工作组

简介

Easyui是一套基于ArkTS语言开发的轻量、可靠的移动端组件库,它是对OpenAtom OpenHarmony(以下简称"OpenHarmony") ArkUI进行深度定制的组件框架。Easyui可扩展性较强,可以基于源码进行二次开发,修改原有组件以及新增部分组件,以满足具体项目的开发需求。该框架适用大部分OpenHarmony应用的开发 ,能够更加完善OpenHarmony 的应用开发能力,使我们的应用开发更简单。

组件特性

组件种类分布

组件效果展示

Easyui:基于OpenAtom OpenHarmony

开发环境

IDE:DevEco Studio 3.1 Beta2,version:3.1.0.400

SDK:3.2.14.2 API9

使用方法

使用前需要先安装ohpm-cli

请参考安装教程:https://ohpm.openharmony.cn/#/cn/help/quickstart

1.下载组件

复制代码
ohpm install @isrc/easyui.har ---save`
`

2.easyui组件库中的地址列表组件使用示例

复制代码
import { AddressList } from 'easyui'`
`@Entry`
`@Component`
`struct TestAddressList {`
`  build() {`
`    Column(){`
`      Text("基础用法")`
`        .fontSize(20)`
`        .fontColor("#ff808080")`
`        .margin(20)`
`        .alignSelf(ItemAlign.Start)`
`      AddressList({`
`        addressList: [              //地址列表`
`          { "id":1,"name":"张三","tel":"13000000000","address":"浙江省杭州市西湖区文一路 138 号东方通信大厦7楼501室"}`
`          ,{ "id":2,"name":"李四","tel":"13100000000","address":"浙江省杭州市拱墅区莫干山路 50号"}`
`          ,{ "id":3,"name":"王五","tel":"13200000000","address":"浙江省杭州市滨江区江南大道13号"}`
`        ],`
`        outRangeIdArray:[5,6,7]        //超出配送范围的地址id集合`
`      })`


`    }.width("100%")`
`    .height("100%")`
`    .backgroundColor("#ffeaeaea")`
`  }`
`}`
`

easyui库中的组件列表

需要的权限

目录结构

复制代码
/easyui        # 项目根目录`
`├── easyui     # easyui组件库`
`│    └─ src/main`
`│       └─ ets/common/components  # 组件库中的所有组件`
`│       └─index.ets    # 组件导出文件    `
`├── entry      # 组件使用方法测试代码示例代码文件夹 `
`│    └─ src/main`
`│       └─ ets/page/Main  # 组件测试效果代码           `
`├── README.md  # 安装使用方法`
`

结语

通过本篇文章介绍,您对easyui组件框架应该有了初步的了解。我们所有的源码和指导文档都已经开源,如果您对本篇文章内容以及所实现的Demo感兴趣,可以根据本篇文章介绍自行下载easyui组件框架源码(https://gitee.com/openharmony-sig/ohos_easyUI)进行研究和使用。同时也欢迎更多开发者与我们共享开发成果,分享技术解读与经验心得。

相关推荐
AKA__老方丈26 分钟前
vue-cropper图片裁剪、旋转、缩放、实时预览
前端·vue.js
梦6501 小时前
Vue 单页面应用 (SPA) 与 多页面应用 (MPA) 对比
前端·javascript·vue.js
清铎2 小时前
大模型训练_week3_day15_Llama概念_《穷途末路》
前端·javascript·人工智能·深度学习·自然语言处理·easyui
岛泪2 小时前
把 el-cascader 的 options 平铺为一维数组(只要叶子节点)
前端·javascript·vue.js
Kiyra3 小时前
阅读 Netty 源码关于 NioEventLoop 和 Channel 初始化部分的思考
运维·服务器·前端
冰暮流星3 小时前
javascript的switch语句介绍
java·前端·javascript
做科研的周师兄3 小时前
【MATLAB 实战】|多波段栅格数据提取部分波段均值——批量处理(NoData 修正 + 地理信息保真)_后附完整代码
前端·算法·机器学习·matlab·均值算法·分类·数据挖掘
da_vinci_x3 小时前
图标量产:从“手绘地狱”到“风格克隆”?Style Reference 的工业化实战
前端·游戏·ui·prompt·aigc·设计师·游戏美术
利刃大大3 小时前
【ES6】变量与常量 && 模板字符串 && 对象 && 解构赋值 && 箭头函数 && 数组 && 扩展运算符 && Promise/Await/Async
开发语言·前端·javascript·es6
天若有情6733 小时前
ES6 模块与 CommonJS 的区别详解
前端·javascript·es6