HarmonyOS @ObjectLink 渲染组件更新同步问题
代码片段如下:
@Observed
class ClassA {
label: string = "1"
constructor(label: string) {
this.label = label
}
}
@Observed
class ClassB {
public a: ClassA;
label: string = "1"
constructor(a: ClassA, label: string) {
this.a = a;
this.label = label
}
}
@Component
struct ViewA {
label: string = 'date';
@ObjectLink
b: ClassB
build() {
Column() {
Text(this.b.a.label)
Blank().height(20)
Button(`更改a.label`)
.onClick(() => {
this.b.a.label = "更改后的值"
})
ViewC({ a: this.b.a })
}
}
}
@Component
struct ViewC {
label: string = 'date';
@ObjectLink
a: ClassA
build() {
Column() {
Text(this.a.label)
Blank().height(20)
}
}
}
@Component
export struct ViewB {
@State b: ClassB = new ClassB(new ClassA('原始值'), "b_label");
build() {
Column() {
Text(this.b.a.label)
Blank().height(20)
ViewA({ label: 'a_label', b: this.b })
}
}
}
点击ViewA button ,更改this.b.a.label = "更改后的值",只有ViewC的Text文本渲染生效,而ViewA,ViewB 的Text(this.b.a.label) 并不能更新生效,这是为什么呢
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
HarmonyOS @objectLink+@observe父组件不更新
23浏览 • 1回复 待解决
解决ArkTS开发中组件渲染和数据更新问题?
674浏览 • 0回复 待解决
HarmonyOS 对象数组在使用@Observed和@ObjectLink驱动子组件UI更新时的问题
238浏览 • 1回复 待解决
HarmonyOS ObjectLink问题
225浏览 • 1回复 待解决
HarmonyOS @ObjectLink 装饰器装饰的变量成员子组件中无法感知更新
648浏览 • 1回复 待解决
HarmonyOS 子页面状态更新父页面状态未同步更新
325浏览 • 1回复 待解决
HarmonyOS 自定义组件,数据更新时,界面无法重新渲染
234浏览 • 1回复 待解决
HarmonyOS 状态管理-父子组件同步的问题
670浏览 • 1回复 待解决
HarmonyOS 子组件和父组件数据同步问题
184浏览 • 1回复 待解决
HarmonyOS使用ObjectLink Observed 无法监听到嵌套类的属性更新
516浏览 • 1回复 待解决
HarmonyOS @Observed/@ObjectLink装饰器相关问题
733浏览 • 1回复 待解决
HarmonyOS ForEach循环渲染组件视图刷新问题
198浏览 • 1回复 待解决
#鸿蒙通关秘籍#在使用@ObjectLink时怎样保证数据的双向同步?
252浏览 • 1回复 待解决
HarmonyOS 关于数组包裹对象中更新组件问题
212浏览 • 1回复 待解决
HarmonyOS 状态同步问题
211浏览 • 1回复 待解决
HarmonyOS 数据同步问题
18浏览 • 1回复 待解决
HarmonyOS 关于List组件使用ForEach渲染刷新的问题
177浏览 • 1回复 待解决
HarmonyOS lazyforEach渲染问题
150浏览 • 1回复 待解决
HarmonyOS appStorage的更新,遮罩中使用并为触发重新渲染
176浏览 • 1回复 待解决
HarmonyOS AAID同步获取问题
231浏览 • 1回复 待解决
HarmonyOS web 同步token问题
133浏览 • 1回复 待解决
HarmonyOS 富文本渲染问题
403浏览 • 1回复 待解决
HarmonyOS 变量状态同步问题
458浏览 • 1回复 待解决
HarmonyOS 界面数据渲染问题
208浏览 • 1回复 待解决
HarmonyOS 动态渲染,组件形态能否实现动态渲染
555浏览 • 1回复 待解决
@ObservedV2是深度观察,这种对于嵌套的属性标记了@Trace的这种,直接可以观察到
但是对于@Observed,现在的规格对于嵌套属性,就是要向下传递一层
目前@Observed的规格就是这样了,一般不会再变动了
如果想直接观察,不想向下传递,就用V2的能力