bindscrolltolower事件中无法获取 this.data
发布于 6 年前 作者 whuang 6856 次浏览 来自 官方Issues

//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]"})即可 .

3 回复

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

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

怎么关闭了

回到顶部