html52.com
我爱小程序-开发者交流社区

关于setDate的值过大的问题

问题模块
API和组件

是这样的,最近在弄一个筛选功能.本来功能已经做完了,到调试的时候,发现有一个筛选项居然有近三千条数据,是的,你没看错,是三千条!!!没说过啊....搞毛啊.

然后,妥妥地出现卡爆了的现象.然后通过排除后,我发现,80%时间是在然后,妥妥地出现卡爆了的现象.然后通过排除后,我发现,80%时间是在这个代码处理上.这个SearchInit中就包涵了那三千个元素的数组.这个代码处理上.这个SearchInit中就包涵了那三千个元素的数组.

    换句话说,setData这个方法在处理较大的数据时会出现很卡的情况.

    也许上面那句话可能不严谨,因为在不手牌子的手机上,相应的处理时间会出现很大的偏差值.

目前随手测试了几个机型,小米6手机上处理时间约700ms,在华为mate9上约2S,在iphone6s上也是2S左右.

而且比较奇怪的是,以mate9为例,相应的函数处理时间为2S,但是用秒表掐的视图变化时间却在3S多.


这个是相应视图,领域项就是那三千条数据.SearchInit是这个筛选功能所需要所有数据的一个集合.这个是相应视图,领域项就是那三千条数据.SearchInit是这个筛选功能所需要所有数据的一个集合.


    我想问一下这1S多的差值时间用于了什么?然后,如何解决setData处理大值数据时的较慢问题?


网友回复

Special:

时间都耗在都 diff 上了,一下子不要放太多数据,可以分队列处理

卖女孩的小男孩คิดถึง:

懒加载,一次显示100,往下拉达到一定就push100进来如此类推

杨李云:

显示哪个就set哪个

morganfly:

不行啊,因为可以同时选择多个一级项下面的二级项啊

一天两觉:

那就不要一次返回这么多,做个分页加载的

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

真正的个人免签约支付接口

云免签H5支付