wepy mpx操作setData的方式是否有借鉴之处

p1iqtdky  于 2022-11-03  发布在  其他
关注(0)|答案(2)|浏览(125)

看到一篇文章, 小程序框架运行时性能大测评 ,文中提到:

mpx框架成功实现了理论上setData的最优;
wepy2的组件会在数据更新时调用setData发送已经更新过的props数据,因此也产生了大量无效调用,且diff精度不足,发送的数据量也较大;

ps:

  1. 非中立三方的软文,不是很喜欢,但是是否有可借鉴之处
k5ifujac

k5ifujac1#

调用setData发送已经更新过的props数据,因此也产生了大量无效调用。

这里是的,父组件数据修改时,同时也会触发子组件 props 的数据 setData。是我一开始理解的子组件的数据得单独去 setData. 那这里我们后面再看看如何去优化。

且diff精度不足,发送的数据量也较大

这里发送的数据量较大我理解应该是指额外的 props setData 吧,我简单看了一下, mpx 应该是在 setData 进行 diff 计算的,但是 WePY 本身没有 diff 计算,是通过数据劫持时, set 数据时,自动收集 diff 的。因此这里说的 diff 精度不足就不太了解了。最终 diff 数据应该是一致的,而且 WePY 还少了一个计算 diff 的时间。

这里我就简单的看了一下,还是有一些参考价值的。后面我再花时间仔细看看。

@dlhandsome@deepfunc@nishino-tsukasa

ekqde3dh

ekqde3dh2#

@Gcaufy 我做过一个实验,diff对于嵌套的数据层数来说并不是越高越好,setData 毕竟还是要序列化之后通过线程通信的。

相关问题