情况大致如下面代码的描述,当ContainerPage中的方法increaseParam()触发时,希望可以刷新SubComponent展示的内容。有什么优雅的办法吗 ?
// SubComponent.ets
@Component
export struct SubComponent {
@BuilderParam public content?: () => void
build() {
row() {
this.content()
}
}
}
// ContainerPage.ets
@Entry
@Component
export struct ContainerPage {
@State param: number = 0
build() {
row() {
SubComponent({
content: () => {
Text(`${this.param}`)
}
})
}
}
increaseParam() {
this.param += 1
}
}
可参考如下简易demo:
this指向问题参考下面链接说明:
https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/arkts-builderparam-0000001820999553\#ZH-CN\_TOPIC\_0000001811317314\_\_装饰器使用说明