收藏
回答

bindscrolltolower事件中无法获取 this.data

框架类型 问题类型 操作系统 工具版本
小程序 Bug macOS 1.02.1907300

//index.wxml

<scroll-view scroll-y="true" bindscrolltolower="bindLoadPage"  class="scroll-loading"></scroll-view>

//index.js

bindLoadPage: function(e) {

    console.log(this.data)

}

//输出 {openList: Array(1)}

    openList["0000"]

在此事件中无法或获取到当前页面对象的data中的值 , 反而得到一个不存在的openList.

在开发工具更新到此版本后出现 , 之前一切正常


//结果 ------

问题已经找到, 之前小伙伴开发时 写了一句

this.data = {"openList":"[0000]"}

用来清空之前data中的数据, 之前的编辑器版本可以正常运行 , 但是版本更新后,这个操作直接导致了

对this.data的监听中断 , 我们没法在事件中通过 this.data.a 来获取 this.setData({"a":1}) 的数据了(但是在wxml不受影响,依然可以显示数据)

解决方法

改为 this.setData({"openList":"[0000]"})即可 .


最后一次编辑于  2019-08-22
回答关注问题邀请回答
收藏

3 个回答

  • 吴箭
    吴箭
    2019-08-22

    我现在在其他项目上正常,只在当前项目存在问题.我先尝试下是否是我自己的问题吧

    2019-08-22
    有用
    回复
  • 灵芝
    灵芝
    2019-08-22

    这边测试是正常的,麻烦给代码片段看下,thanks(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html

    2019-08-22
    有用
    回复 2
    • 吴箭
      吴箭
      2019-08-22
      我现在console里面输入 getCurrentPages()[0].data 返回的也是 openList
      2019-08-22
      回复
    • 灵芝
      灵芝
      2019-08-23回复吴箭
      现在还有问题么?
      2019-08-23
      回复
  • 爱斯尼家具电话13075580121
    爱斯尼家具电话13075580121
    2019-08-22
    怎么关闭了
    2019-08-22
    有用
    回复
登录 后发表内容
问题标签