当前位置: 首页 > news >正文

HarmonyOS学习--三方库

文章目录

  • 一、三方库获取
  • 二、常用的三方库
    • 1. UI库:
    • 2. 网络库:
    • 3. 动画库:
  • 三、使用开源三方库
    • 1. 安装与卸载
    • 2. 使用
  • 四、问题解决
    • 1. zsh: command not found: ohpm

一、三方库获取

  1. 在Gitee网站中获取
    搜索OpenHarmony-TPC仓库,在tpc_resource中对三方库进行了资源汇总。
  2. 通过OpenHarmony三方库中心仓获取
    根据类型或者直接搜索寻找需要的三方库。

二、常用的三方库

1. UI库:

  • @ohos/textlayoutbuilder:可以定制任一样式的文本构建工具,包括字体间距、大小、颜色、富文本高亮显示等。
  • @ohos/roundedimageview:可以生成圆角矩形、或者椭圆形等图片形状。

2. 网络库:

  • @ohos/axios:可以运行在node.js 和浏览器中,基于Axios 原库v1.3.4版本进行适配,并沿用其现有用法和特性。

3. 动画库:

  • @ohos/lottie:可以解析Adobe After Effects软件通过Bodymovin插件导出的json格式的动画,并在移动设备上进行本地渲染。
  • @ohos/svg:可以解析SVG图片并渲染到页面上。

三、使用开源三方库

以lottie示例使用三方库
@ohos/lottie是基于lottie-web开发,集成在三方库社区内的开源版本,是HarmonyOS系统中复杂动画的一种解决方案。

1. 安装与卸载

  • 安装
ohpm install @ohos/lottie
  • 卸载
ohpm uninstall @ohos/lottie

安装完成后在根目录下的oh-package.json5中,可以找到lottie
在这里插入图片描述

2. 使用

  1. 引入lottie模块
import lottie from '@ohos/lottie'
  1. 构建渲染上下文
// 初始化渲染上下文private renderingSettings: RenderingContextSettings = new RenderingContextSettings(true);private renderingContext: CanvasRenderingContext2D = new CanvasRenderingContext2D(this.renderingSettings);
  1. 准备JSON文件

  2. 关联画布

// 加载Canvas画布   
Canvas(this.renderingContext)
  1. 加载动画
this.animateItem = lottie.loadAnimation({container: this.renderingContext,renderer: 'canvas',loop: 10,autoplay: true,name: this.animateName,path: 'common/lottie/data.json'});
  1. 控制动画
lottie.play();

四、问题解决

1. zsh: command not found: ohpm

MacOS实用ohpm命令时报错 zsh: command not found: ohpm 的解决方法:

  1. 查询Ohpm路径
/Users/xxx/Library/Huawei/ohpm
  1. 修改.bash_profile
vim .bash_profile

将ohpm环境变量配置到文件中:

# HUAWEI
export OHPM_HOME=/Users/xxx/Library/Huawei/ohpm 
export PATH=${PATH}:${OHPM_HOME}/bin
# HUAWEI END

并输入命令 source .bash_profile 使配置生效:

source .bash_profile
  1. 如果退出后无效,把 bash shell 中.bash_profile 全部环境变量(也可以只复制暂时需要的环境变量)加入zsh shell里就可以。
vim .zshrc
sourch ~/.zshrc
  1. 重启DevEco Studio后生效
http://www.lryc.cn/news/304872.html

相关文章:

  • 【服务器数据恢复】FreeNAS+ESXi虚拟机数据恢复案例
  • 【GPT-2】论文解读:Language Models are Unsupervised Multitask Learners
  • 基于机器学习、遥感和Penman-Monteith方程的农田蒸散发混合模型研究_刘燕_2022
  • 博客 cn 站搭建 v3 v3.1
  • 2024全国水科技大会暨流域水环境治理与水生态修复论坛(六)
  • Python实战:读取MATLAB文件数据(.mat文件)
  • spring boot3登录开发-3(账密登录逻辑实现)
  • Django后端开发——ORM
  • AI模型训练的初步整理
  • 【Java从入门到精通】Java Number Math 类
  • SQL字符集
  • openssl 生成nginx自签名的证书
  • adb push 使用
  • 【Docker】构建pytest-playwright镜像并验证
  • 算法沉淀——穷举、暴搜、深搜、回溯、剪枝综合练习四(leetcode真题剖析)
  • 如何在java中使用 Excel 动态函数生成依赖列表
  • 07 MyBatis之高级映射 + 懒加载(延迟加载)+缓存
  • MT8791迅鲲900T联发科5G安卓核心板规格参数_MTK平台方案定制
  • java:Java中的数组详解
  • Modern C++ std::visit从实践到原理
  • 谷歌gemma2b windows本地cpu gpu部署,pytorch框架,模型文件百度网盘下载
  • 数据结构-查找与排序
  • 【前端素材】推荐优质后台管理系统Qovex平台模板(附源码)
  • MATLAB环境下基于短时傅里叶变换和Rényi熵的脑电信号和语音信号分析
  • Go语言调用身份证实名认证API方法-标准版身份证实名认证接口
  • 数据库增删改查
  • 10.CSS3的calc函数
  • echrts 全国地图、各省市地图json文件下载
  • 如何使用1688.item_search_shop API获取阿里巴巴店铺商品信息
  • PLC_博图系列☞基本指令“取反RLO”