HarmonyOS 使用PersistentStorage存储持久化时,读取正常,调用时undefined

使用PersistentStorage存储持久化简单的对象时可以被JSON.stringify()和JSON.parse()重构的对象,第一次正常,再次进入时,获取到的对象正常,但是调用其里面的私有属性时为undefined。

HarmonyOS
2天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
zxjiu

​1、根据文档说明。

https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/arkts-persiststorage-V5

限制条件PersistentStorage在持久化可以被JSON.stringify()和JSON.parse()重构的对象时,对象的属性方法不支持持久化。

如果想要持久化对象以及对象属性,可以采用首选项,参考文档链接:https://developer.huawei.com/consumer/cn/doc/harmonyos-references/js-apis-data-preferences-0000001813416160

2、开发中如果想要输出一个对象所占用的内存,例如2kb,即等于2048字节。所以只需要将要持久化存储的对象转化为json字符串,然后计算字符串的长度,再根据所使用的字符编码以及字符串中包含的字符数,来计算出字节大小,然后缓存成对应的内存计量单位如kb等。

3、持久化存储有多种,例如PersistentStorage和Preferences,针对持久化存储的场景不同,PersistentStorage存储AppStorage属性UI状态,以确保这些属性在应用程序重新启动时的值与应用程序关闭时的值相同;Preferences一般为应用保存用户的个性化设置等,使用中可以互补​。

分享
微博
QQ
微信
回复
1天前
相关问题
PersistentStorage持久存储问题
227浏览 • 0回复 待解决
HarmonyOS 持久存储方案
21浏览 • 1回复 待解决
HarmonyOS dataPreferences不是持久存储
252浏览 • 1回复 待解决
PersistentStorage如何持久化一个对象?
2674浏览 • 1回复 待解决
HarmonyOS Preferences如何实现持久存储
249浏览 • 1回复 待解决
process调用时构建异常
132浏览 • 1回复 待解决
如何实现应用数据持久存储
1917浏览 • 1回复 待解决
关于数据持久存储要如何实现
368浏览 • 2回复 待解决
@Builder使用用时异常
738浏览 • 1回复 待解决
使用fetch报错,fetch undefined
6976浏览 • 2回复 待解决
HarmonyOS AKI绑定失败,无法正常使用
224浏览 • 1回复 待解决
提问
该提问已有0人参与 ,帮助了0人