积分14 / 贡献0

提问3答案被采纳0文章0

三方库如何编写和封装

写代码不是有手就行 显示全部楼层 发表于 2023-10-23 23:53:22

我正在开发一个UI类的三方库,拥有独立的页面MainPage.ets。目前已完成三方库的相关代码,但有以下问题:

1.如何才能将三方库的代码进行封装达到下面的效果:

  • 对外只暴露几个函数
  • 使开发者调用start函数即可跳转至三方库的页面MainPage
  • 通过start函数的返回值获取运行结果
  • 以上功能的实现代码应该写在工程目录下的哪个部分

2.如何像其他三方库一样只通过import一个名称就实现对整个三方库的引用 以Axios库为例,要如何编写我的三方库才能像如下代码一样供其他人使用?

import axios from '@ohos/axios'

您尚未登录,无法参与评论,登录后可以:
参与开源共建问题交流
认同或收藏高质量问答
获取积分成为开源共建先驱

精彩评论2

mean

沙发 发表于 2023-10-24 14:46:02

三方库如何编写和封装


可以通过开发是静态共享包HAR(Harmony Achive)实现。
静态共享包HAR(Harmony Achive)可以包含代码、C++库、资源和配置文件。通过HAR可以实现多个模块或多个工程共享ArkUI组件、资源等相关代码。

1. 创建har包,参考开发及引用静态共享包
2. 使用库模块
  • 本地使用
如果是本地使用库模块,在entry目录下,oh-package.json5目录下添加依赖,即可在文件中通过import UILibrary from 'UILibrary'使用
fakename.png
  • 开源三方库
如果想要其他人也可以使用,可以把三方库发布到ohpm三方库中心仓,参考文章如何贡献开源三方库

fakename.png
fakename.png
fakename.png
fakename.png

马迪

板凳 发表于 2023-10-24 15:15:54
1.建议在三方库里export函数,自定义组件,而不要暴露一个页面吧。
页面都写在应用里,跳转到自己的应用页面里,这个页面里使用三方库的自定义组件

2.oh-package.json5的库入口文件为index.js
参考axios三方库,在index.js里export你需要开发者使用的对象
https://gitee.com/openharmony-si ... ster/axios/index.js

Copyright   ©2023  OpenHarmony开发者论坛  京ICP备2020036654号-3 |技术支持 Discuz!

返回顶部