微信小程序新坑 监听模式下调用函数并用setData更新模板层时,模板层不触发重新渲染

原因分析

mvvm架构和Mini架构都是遵循数据层渲染模板层思想

1.真实DOM是由虚拟DOM构建完成然后渲染输出的真实DOM。

2.在mini架构和mvvm架构中,要触发页面对象的数据属性所对应的虚拟DOM或子对象的接收参数的重新渲染必须通过触发这个对象的es5属性监听器set属性

3.通过set属性的监听函数调用虚拟DOM的构建函数才能完成模板层的重新渲染。

由于微信小程序的官方坑为观察者模式调用setData时不能触发属性的set,所以导致模板层不能重新渲染

如何解决问题

将数据处理逻辑由Page组件处理完成,然后由page组件对象调用setData函数对Component对象的构造参数进行重新传参,从而触发Component对象的模板层的重新渲染

猜你喜欢

转载自blog.csdn.net/qq_38603437/article/details/92075822
今日推荐