【HarmonyOS4学习笔记】《HarmonyOS4+NEXT星河版入门到企业级实战教程》课程学习笔记(十九)

课程地址: 黑马程序员HarmonyOS4+NEXT星河版入门到企业级实战教程,一套精通鸿蒙应用开发

(本篇笔记对应课程第 29 节)

P29《28.网络连接-第三方库axios》

要想使用第三方库axios,需要先安装ohpm,因为 axios 是第三方库,不是鸿蒙官方提供的,所以需要先安装 ohpm,它是 Harmony Packages Manager 的简写,是鸿蒙的包管理工具。

第一步:下载和安装 ohpm:


点击 "点击链接获取",跳转到如下页面,下载相应版本:

下载完成后将 该压缩包文件放到习惯使用的目录下并解压:

进入 ohpm/bin 目录,并在此目录下打开命令行窗口:

在命令行窗口中执行初始化:init.bat

但此时仅实现了在bin目录下命令行有效,在其它目录下无效:

如果想让其在所有目录下都生效,需要将该目录配置到环境变量中:

win10配置环境变量如下:右键"我的电脑",点击"属性",找到"高级系统设置":

在 path 中配置环境变量:

配置完成后在任一目录下打开命令行窗口,都可以正常使用 ohpm 命令行了。

第二步:下载和安装 axios

如果用到其它第三方库,使用方法可以查看鸿蒙三方库中心仓:ohpm.openharmony.cn/#/cn/home


项目目录下有一个文件:oh-package.json5 ,这个文件即类似于项目依赖管理的文件:

在根目录下执行安装命令,安装完成后会发现依赖文件中显示出了 axios 的依赖;同时在 oh_modules(项目的第三方库和其他依赖) 下也能看到 axios 依赖:

axios() 第二个配置项中,params 代表使用get方法传递的参数,与拼接在url之后效果相同;data代表使用get方法以外的方法时需要传递的参数。

实践:

实践中遇到的问题:

从该篇笔记中找到原因与解决方案:
go------error记录

P30《29.数据持久化-用户首选项》

实现数据持久化在harmonyOS中有很多种方式,比较常见的是以下两种:

读取项目持久化文件,这是一个IO操作,比较耗时,因此是一个异步操作,返回一个Promise对象:

将 routerInfo 类定义到 viewmodel 目录下的一个文件中:

改造首页,增加一个设置字体大小的功能:

实现用户持久化:

1、在 util 目录下定义一个 PreferenceUtil.ts 的首选项工具类文件:

2、定义加载 Preference 方法:

异步写法:

同步写法:

语句后输入 .if 可快速将前面的语句包裹在 if() 中:

3、定义写入 Preference 方法:

4、定义读取 Preference 方法:

5、在 Ability 的 onCreate 钩子函数中加载 Preference:

6、在首页中使用 获取 Preference 方法:


7、字号改变时写入 Preference :

测试:

测试 Preference 必须用模拟器

启动模拟器:

点击 返回 按钮,应用关闭,Ability被销毁:

再次打开应用,发现数据持久化效果成功了!

实践:

DevEco Studio 常用快捷键

相关推荐
九皇叔叔1 分钟前
MySQL ORDER BY 性能优化详解:Using filesort、联合索引、ASC/DESC 与覆盖索引
android·adb
凯尔萨厮6 分钟前
Java学习笔记十(注解)
java·笔记·学习
JoannaJuanCV20 分钟前
VLM学习-SFT(监督微调)
深度学习·学习·机器学习·大模型·视觉大模型·vlm·视觉编码器
GKxx33 分钟前
在 HarmonyOS 上给 QEMU 搭一个最小 aarch64 Linux guest(内核 + busybox initramfs)
linux·华为·qemu·harmonyos·鸿蒙·鸿蒙pc
OriginCoding36 分钟前
用 AI Agent 协作完成一个 Android TOTP 应用:从需求边界到 v1.0.0
android·ai编程
黑臂麒麟39 分钟前
屏幕信息全解析:HarmonyOS的分辨率、刷新率、折叠状态一个API搞定
华为·arkts·鸿蒙
黑臂麒麟41 分钟前
HarmonyOS 网络连接诊断实战:检测网络状态、WiFi 切换、弱网监测一网打尽
网络·华为·arkts·鸿蒙
程序员大雄学编程1 小时前
微积分43. 无穷积分入门:从概念到Python实战可视化
开发语言·python·学习·微积分
一条破秋裤2 小时前
STM32 学习笔记:GPIO 输出实验——LED 闪烁、流水灯与蜂鸣器
笔记·stm32·学习
2601_962073972 小时前
【MySQL】全面学习数据库查询技巧:查询指令深度学习指南
数据库·学习·mysql