@State修饰的对象通过传参给子组件,子组件不刷新,获取的值为空?

@State修饰的对象通过传参给子组件,子组件不刷新,获取的值为空?

阅读 609
1 个回答

问题原因

@State监听对象等复杂类型时监听的是其内存中的引用地址,而非对象的值,直接通过this.obj.xxx = ‘XXX’ 修改时其内存中对象引用地址未发生改变。因此@State监听不到这次改变未触发UI更新。

解决措施

可以通过@Observed和@ObjectLink进行数据管理。

参考链接

Observed和ObjectLink进行数据管理

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题