HarmonyOS使用@Objectlink和 @watchs 如何只监听对象一个属性的变化
@Component
export struct TestView{
@ObjectLink @Watch("updateViewModel") viewModel:PlayFlowViewModel
updateViewModel(){
console.log("TestView updateViewModel")
}
}
@Observer
export class PlayFlowViewModel{
playBaseData:PlayBaseData | null = null
option: Options = new Options()
datasource:DataSource = new DataSource()
playEvent:ReceiverEvent = {event:0,bundle:null}
}
场景是视频播放场景,包含播放器的组件里面,需要响应外界的播放器控制消息,例如暂停,Seek等消息。目前设计的方案是想把这些消息和一些播放数据 都统一放到一个model里面便于管理。但是现在发现PlayFlowViewModel中,只要一个属性更新,整个viewmodel的watchs函数都会被触发。目前想只监听一个属性的变化,不知道有没有好的方案。
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
#鸿蒙通关秘籍#如何在HarmonyOS中使用@Observed和@ObjectLink装饰器监听多层嵌套类对象属性的变化?
425浏览 • 1回复 待解决
如何监听数组内对象属性变化
2578浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何利用@Observed装饰器和@ObjectLink装饰器实现多层嵌套类对象属性的变化监听?
431浏览 • 1回复 待解决
#鸿蒙通关秘籍# 如何使用@Observed和@ObjectLink装饰器实现多层嵌套类对象的属性监听?
343浏览 • 0回复 待解决
HarmonyOS 如何监听数组对象中元素属性的变化
363浏览 • 1回复 待解决
使用@Observed/@ObjectLink监听多层状态的变化
1789浏览 • 1回复 待解决
如何实现一个监听网络变化的方法
814浏览 • 1回复 待解决
#鸿蒙通关秘籍#使用@Observed和@ObjectLink处理多层嵌套对象变化
590浏览 • 1回复 待解决
HarmonyOS 使用ObjectLink观察对象中的数组,修改数组长度,监听不到数据变化
819浏览 • 1回复 待解决
HarmonyOS 如何获取一个class对象的所有属性名
341浏览 • 1回复 待解决
HarmonyOS class添加@Observed,如何通过@Watch只监听class内某个属性的变化
48浏览 • 1回复 待解决
HarmonyOS使用ObjectLink Observed 无法监听到嵌套类的属性更新
557浏览 • 1回复 待解决
HarmonyOS 一个组件怎么监听另一个组件属性改变
855浏览 • 1回复 待解决
如何监听页面page的变化。 增加和删除。有一个位置可以抓到这些变化的状态。
764浏览 • 1回复 待解决
HarmonyOS @Watch如何监听复杂变量的某一个属性值
170浏览 • 1回复 待解决
HarmonyOS 如何监听数组元素属性的变化?
805浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在HarmonyOS中实现多层嵌套类对象属性变化的监听?
446浏览 • 1回复 待解决
HarmonyOS 状态管理里面,目前 @watch 只能监听某一个属性,都有一个属性为 observe 装饰器装饰的class A,目前只想@watch 这个A对象下的a属性,需要怎么实现。
199浏览 • 1回复 待解决
HarmonyOS @Watch装饰器,能监听对象中某个属性的变化值吗?
352浏览 • 1回复 待解决
HarmonyOS通过router页面跳转,如何在一个统一的地方进行监听栈的变化?
672浏览 • 1回复 待解决
HarmonyOS 如何让@Entry在一个Ability中只存在一个
327浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何确保@Observed装饰的属性变化在复杂对象中被正确监听?
347浏览 • 1回复 待解决
#鸿蒙学习大百科#如何删除分布式对象的属性变化的监听?
589浏览 • 1回复 待解决
不使用弹窗,通过 stack 和属性显隐模拟一个弹窗
845浏览 • 1回复 待解决
HarmonyOS 对象A数组,对象A中又嵌套一个对象B数组,修改B中的属性UI,不刷新
806浏览 • 1回复 待解决
使用@Watch监听的对象,只能监听一层数据变化,多层次数据变更无法监听,同@State状态管理机制一致,规避方式为把整体更换数据源改为更新item中的属性值,然后用@ObjectLink和@Observed来监听item的变化。参考以下链接:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/arkts-observed-and-objectlink-V5