HarmonyOS tab组件无法刷新

@Require @Prop @Watch("viewModelUpdate") viewModel: CreditTradeViewModel
@State trendComponentParam: TrendComponentParam = new TrendComponentParam(this.viewModel.stockCode, this.viewModel.stockType, this.viewModel.stockName)
viewModelUpdate() {
  this.trendComponentParam.stockCode = this.viewModel.stockCode
  this.trendComponentParam.stockType = this.viewModel.stockType
  this.trendComponentParam.stockName = this.viewModel.stockName
}
TabContent() {
  if (IStockDetailService.instance() != null) {
    IStockDetailService.instance()!.getTrendChartComponent().builder(this.trendComponentParam)
  }
}

监听viewmodel的属性变化,更新组件的参数,但是这个组件一直无法刷新,断点发现,断点在if这句执行了,但是if里面那个不执行。而且可以肯定IStockDetailService.instance()这个实例是存在的。

HarmonyOS
2024-12-26 15:47:12
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
put_get

可以查看此文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/arkts-wrapbuilder-V5#限制条件

文档里有wrapbuilder的限制条件以及示例可以参考。

参考此demo:

@Builder
function MyBuilder(value: string, size: number) {
  Text(value)
    .fontSize(size)
}
let globalBuilder: WrappedBuilder<[string, number]> = wrapBuilder(MyBuilder);
@Entry
@Component
struct Index {
  @State message: string = 'Hello World';
  build() {
    Row() {
      Column() {
        globalBuilder.builder(this.message, 50)
        Button('Change')
          .onClick(()=&gt;{
          this.message = 'hello'
        })
      }
      .width('100%')
    }
    .height('100%')
  }
}
分享
微博
QQ
微信
回复
2024-12-26 17:11:16
相关问题
HarmonyOS Tab组件无法响应onPageShow
927浏览 • 1回复 待解决
Tab组件无法左对齐该怎么处理?
765浏览 • 1回复 待解决
HarmonyOS Repeat无法正确刷新
218浏览 • 1回复 待解决
Tab组件问题
455浏览 • 1回复 待解决
HarmonyOS Navigation和Tab组件问题
1550浏览 • 1回复 待解决
HarmonyOS 列表多选页面无法刷新
338浏览 • 1回复 待解决
HarmonyOS tab组件生命周期问题
307浏览 • 1回复 待解决
HarmonyOS 组件刷新问题
386浏览 • 1回复 待解决
HarmonyOS web组件怎么刷新
148浏览 • 1回复 待解决
HarmonyOS LIst组件UI不刷新
216浏览 • 1回复 待解决
HarmonyOS Tabs组件Tab栏滚动问题
843浏览 • 1回复 待解决
HarmonyOS tab组件的页签该怎么实现
298浏览 • 1回复 待解决