《探索 HarmonyOS NEXT(5.0):开启构建模块化项目架构奇幻之旅 —— 构建公
上一篇大概说了 《探索 HarmonyOS NEXT(5.0):开启构建模块化项目架构奇幻之旅 —— 构建基础特性层》,这一篇继续开发 构建公共能力层。公共能力层
[*]主要针对公共能力层的各子目录将被编译成HAR包,而他们只能被产物定制层和基础特性层所依靠,不答应存在反向依靠。比如 网络请求模块、公共UI模块、工具模块。
1.这次创建命名为 commons的目录,用于存放公共的
https://img-blog.csdnimg.cn/img_convert/954ebf606929066347a36107859849c6.png
2.目前先创建三个模块,分别是网络请求模块、公共UI模块、工具模块,分别对应network、uicomponents、utils。
怎样创建HAR模块,这里不再详细说,请看上一篇文章https://juejin.cn/post/7429590344205418523 。
https://img-blog.csdnimg.cn/img_convert/cb65d8cc042a15aa8ad57838c3093427.png
[*]features目录下的几个模块分别导入公共能力层三个依靠(非必须,须要什么导入什么),导入后就可以使用公共能力层里面的东西了。
"dependencies": {
"network": 'file:../../commons/network',
"uicomponents": 'file:../../commons/uicomponents',
"utils": 'file:../../commons/utils'
}
https://img-blog.csdnimg.cn/img_convert/a841fb0cca2c3bed55d7b9644df467c4.png
创建项目级lib、plugins
libs 本地三方依靠库,以第三方库zrouter举例
1.创建libs目录,把第三方库放到目录里,本地依靠放到项目级的oh-package.json5里,RouterApi文件在源码里
"dependencies": {
// 本地依赖
"@hzw/zrouter": "file:libs/RouterApi.har",
// 远程依赖
// "@hzw/zrouter": "^1.0.7"
},
https://img-blog.csdnimg.cn/img_convert/2c00e697ee33c5c705654d6750844cfd.png
2.Sync Now 后,项目级oh_modules里并没有这个依靠,鼠标放到"file:libs/RouterApi.har" 上提示,点Run ‘ohpm instal’ 后报错了(图2),报有些依靠项名称与现实包名称差别等,想到了上一篇讲的,name要和HAR模块里的name保持同等,根据错误信息给了提示,我们把"routerApi" 改成 “@hzw/zrouter”,成功了(图3)。
https://img-blog.csdnimg.cn/img_convert/fcf490b673af73de6e9f83dcd846be4e.png
https://img-blog.csdnimg.cn/img_convert/396485273598e5690812e7dac38b922e.png
https://img-blog.csdnimg.cn/img_convert/6a9db10fdba2c56ae17d92417113144d.png
plugins 本地插件依靠库
1.和上面的大差不差,在项目根目录的hvigor目录的hvigor-config.json5文件中设置安装。此时不用太关注hvigor的作用,后期会持续先容。
"dependencies": {
// 本地依赖
"router-register-plugin":"file:../plugins/router-register-plugin-1.0.9.tgz"
// 远程依赖
// "router-register-plugin":"1.0.9"
},
https://img-blog.csdnimg.cn/img_convert/582a760003ab87f41f2e718a9afdd89c.png
工程目录,请看README.md
https://gitee.com/jiaojiaoone/explore-harmony-next/blob/master/README.md
[*]以往系列文章
[*] 《探索 HarmonyOS NEXT(5.0):开启构建模块化项目架构奇幻之旅 —— 模块化基础篇》
[*]《探索 HarmonyOS NEXT(5.0):开启构建模块化项目架构奇幻之旅 —— 构建基础特性层》
若本文对您稍有帮助,诚望您不吝点赞,多谢。
有爱好的同学可以点击检察源码
[*]gitee:https://gitee.com/jiaojiaoone/explore-harmony-next.git
[*]github:https://github.com/JasonYinH/ExploreHarmonyNext.git
结语
经过以上三篇文章的阐述,想必您对模块化已经有了一定程度的认识和理解。然而,假如您想要更加深入地探究模块化的奥秘,获取更全面、更详尽的知识,照旧须要多多查阅官方文档。官方文档作为权威的参考资料,能够为您提供最正确、最前沿的信息和引导,帮助您在模块化的学习和实践道路上走得更远、更稳。盼望您在探索的过程中不停积聚履历,取得更大的进步。祝您学习顺遂!
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]