HarmonyOS @ObjectLink和@State的相关疑问
子组件使用@ObjectLink接收来自父组件中用@State 修饰的@Observed的嵌套变量对象,当该对象的嵌套对象属性发生修改时子组件无法刷新UI
demo:
@Observed
class Model {
a: A
constructor(a: A) {
this.a = a
}
}
@Observed
class A {
str: string
constructor(str: string) {
this.str = str
}
}
@Component
struct MyView {
@ObjectLink objLink: Model
build() {
Text(`MyView ${this.objLink.a.str}`)
}
}
@Entry
@Component
struct Index {
@State model: Model = new Model(new A("b"))
build() {
Column({ space: 20 }) {
MyView({ objLink: this.model})
Button("Click")
.onClick(() => {
this.model.a.str = "d"
})
}
.width("100%")
.height("100%")
}
}
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
HarmonyOS 状态管理之ObjectLink的疑问
1484浏览 • 1回复 待解决
状态管理装饰器:state和observerd/objectlink,性能对比
3013浏览 • 1回复 待解决
@ObjectLink @State能同时使用吗?
579浏览 • 1回复 待解决
关于鸿蒙next相关疑问
528浏览 • 0回复 待解决
关于鸿蒙next相关疑问
560浏览 • 0回复 待解决
关于鸿蒙next相关疑问
571浏览 • 0回复 待解决
关于鸿蒙next相关疑问
545浏览 • 0回复 待解决
关于鸿蒙next相关疑问
686浏览 • 0回复 待解决
关于鸿蒙next相关疑问
755浏览 • 2回复 待解决
关于鸿蒙next相关疑问
541浏览 • 0回复 待解决
关于鸿蒙next相关疑问
624浏览 • 1回复 待解决
HarmonyOS @Observed/@ObjectLink装饰器相关问题
1727浏览 • 1回复 待解决
关于鸿蒙next相关疑问
472浏览 • 0回复 待解决
关于鸿蒙next相关疑问
806浏览 • 1回复 待解决
关于鸿蒙next相关疑问
482浏览 • 0回复 待解决
关于鸿蒙next相关疑问
525浏览 • 0回复 待解决
关于鸿蒙next相关疑问
534浏览 • 0回复 待解决
关于鸿蒙next相关疑问
1342浏览 • 1回复 待解决
HarmonyOS State的特性相关问题
643浏览 • 1回复 待解决
HarmonyOS 动态navigation @state等装饰器编写位置疑问
874浏览 • 1回复 待解决
HarmonyOS 关于企业内应用分发的相关疑问
1381浏览 • 1回复 待解决
Observe和ObjectLink 使用
1228浏览 • 1回复 待解决
使用connection网络管理接口获取网络类型的相关疑问
2219浏览 • 1回复 待解决
@State和@Link的区别是什么?
593浏览 • 0回复 待解决
1.当前您demo里面传入到ChatItemView里面的是Chat,那你观测的只是Chat,Chat下面的嵌套对象user是观测不到的。
2.ChatItemView子组件正确传入的是user: this.chat.user,从而子组件观测的就是user。