HarmonyOS 鸿蒙Next localStorage在navigation组件中的功能体现不正常,应该如何使用
HarmonyOS 鸿蒙Next localStorage在navigation组件中的功能体现不正常,应该如何使用
场景:使用navgation作为位路由导航方式,传入非组件共享型localstorage作为页面内,组件间的状态管理。首页A是子页跳转按钮,在子页B中有一个跳转子页C的按钮。
功能:想要在B页面执行计数增加,当跳转到C页时,点击按钮执行计数增加。但是不想要B页与C页的计数是同步的,B页与C页的计数是相互独立的。即B页与C页是不同的localstorage管理,即在@entry()中传入了不同的localstorage实例。
实际交互体现:在B页点击增加计数后,C页中的计数与B页是同步的。虽然C页与B页是不同的localstorage实例,但是当C页与B页状态量名一样的时候,数据是同步的
B页截图:
C页截图:
需求:想知道怎么才能在navigation中使用子页的单独localstorage管理,不与其他同类子页实例的状态量同步。这样方便数据管理,避免出现:在某个子页实例改变了状态后,跳转到另一个同类页面实例中时,数据直接同步了,实现不了,两个实例页面的独立编辑操作。
简单说,就是想要一种类似router跳转的页面跳转模式:
好像记得navigation也有,但是不知道在文档哪里记载了,希望大佬指点下。
更多关于HarmonyOS 鸿蒙Next localStorage在navigation组件中的功能体现不正常,应该如何使用的实战教程也可以访问 https://www.itying.com/category-93-b0.html
更多关于HarmonyOS 鸿蒙Next localStorage在navigation组件中的功能体现不正常,应该如何使用的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
pushPath(info: NavPathInfo, options?: NavigationOptions): void
页面入栈时,可以设置options,options中设置launchMode:
谢谢,我去试下,看能否满足需求
经过测试,用new_instance模式跳转,各navDestination子页中的状态localstorage也是共用的一个locastorage,不是各自子页的@entry中传入的localstorage。再看看,没有更好的方式,还是使用router去跳转页面吧。
https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/arkts-localstorage-V5#navigation组件和localstorage联合使用 这个是你想要的效果
我也感觉是navigation方式跳转子页,其实还是在一个页面内,因为创建语法,感觉传入的就是@builder方法,是作为组件。是想要一个只在本页面实例内传递的状态管理。
有要学HarmonyOS AI的同学吗,联系我:https://www.itying.com/goods-1206.html
https://developer.huawei.com/consumer/cn/doc/best-practices-V5/bpta-hmrouter-V5
可以学下这个,可以对单页面进行生命周期管理和数据管理
感谢,一会去学习下
试了下,不满足现在的需求,使用起来比较麻烦,其实想要一个官方原生的解决方式,以便以后应用升级
在HarmonyOS鸿蒙系统中,localStorage作为Web存储API的一部分,通常用于在客户端存储数据,包括字符串类型的键和值。如果在navigation组件中使用localStorage遇到功能异常,可能是由于以下几个原因:
-
作用域问题:确保localStorage的访问是在正确的上下文(如页面或组件的生命周期内)进行的。不同页面或组件间的localStorage数据是共享的,但访问时的上下文需正确。
-
权限设置:检查应用是否有足够的权限去读写localStorage。在鸿蒙系统的某些安全策略下,可能需要特定的权限配置。
-
代码错误:检查代码是否有误,比如拼写错误、API调用错误等,这些都会导致localStorage功能异常。
-
系统兼容性:确认当前鸿蒙系统版本是否支持你正在使用的localStorage API。不同版本的系统可能有不同的实现或限制。
-
数据格式:确保存储和读取的数据格式正确,避免类型不匹配或数据损坏导致的问题。
针对上述问题,建议逐一排查并修正。如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html 。