收藏
回答

页面滚动时执行一个setData延迟1秒以上问题

问题模块 框架类型 问题类型 终端类型 微信版本 基础库版本
框架 小程序 Bug 工具 6.7.3 2.4.0

- 当前 Bug 的表现(可附上截图)


    小程序页面滚动时,执行一个setData 延迟 1秒以上才执行完。

    1秒可以看到很明显慢。




- 预期表现


    及时快速执行,100毫秒以内才不明显。


- 复现路径


- 提供一个最简复现 Demo

https://developers.weixin.qq.com/s/NysKtdmk7T40


最后一次编辑于  2018-11-26  (未经腾讯允许,不得转载)
回答关注问题邀请回答
收藏

3 个回答

  • HS
    HS
    2018-11-26

    是不是绑定了监听事件,进行了大量计算,setData 传输了全量、大量的数据?

    2018-11-26
    赞同
    回复 4
    • 宁静致远
      宁静致远
      2018-11-27

      就只写了一个判断 scrollTop == 300 执行一个setData, 执行完 也是用时2.5秒。


      2018-11-27
      回复
    • HS
      HS
      2018-11-27回复宁静致远

      感觉是你耗时太大了,试下加入一些防抖保护呢,例如 lodash.debounce

      2018-11-27
      回复
    • 宁静致远
      宁静致远
      2018-11-27回复HS

      如图所示, 没有做其他处理,只是对300这个固定值进行处理,也没有抖动,console 输出scrollTop也很连续。

      但执行setData 还是用了2551毫秒。 在200-2500毫秒左右。


      2018-11-27
      回复
    • 宁静致远
      宁静致远
      2018-11-27回复HS

      有什么好的办法实现 分类商品列表 ,右边商品列表滚动,左边商品分类同步滚动功能吗?

      2018-11-27
      回复
  • 居里栈栈
    居里栈栈
    01-25

    最后怎么实现的鸭,我也是这个问题,老板准备抄我鱿鱼,说美团和饿了么都可以实现

    01-25
    赞同
    回复 2
    • 宁静致远
      宁静致远
      01-30

      没有, 你的有办法了吗?

      01-30
      回复
    • 居里栈栈
      居里栈栈
      01-30回复宁静致远

      解决了,在json文件加这个

      "usingComponents": {},



      01-30
      1
      回复
  • 宁静致远
    宁静致远
    2018-11-27

    就只写了一个判断 scrollTop == 300 执行一个setData, 执行完 也是用时2.5秒。


    2018-11-27
    赞同
    回复