收藏
回答

小程序监听数组长度变化

问题模块 框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
API和组件 小程序 需求 小程序监听数组长度变化 客户端 6.6.7.1321 2.2.4

我希望获得的方法:小程序监听数组长度变化。

场景:我要实时监听数组是否有值,然后进行相应的操作。

类似:vue的watch方法;GitHub的$ npm install on-change。

求解

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

2 个回答

  • 🚗🚕🚙🚌🚎🚒🚐🚚
    🚗🚕🚙🚌🚎🚒🚐🚚
    2018-08-30

    不清楚你要实现什么逻辑,试试重写getter和setter能不能实现

    2018-08-30
    赞同
    回复 2
    • 木头
      木头
      2018-08-30

      我要监听一个数组变量的值是否改变,没有重写过,但是听说数组的push不会触发getter和setter,不知道你能不能写个例子让我借鉴一下呢

      2018-08-30
      回复
    • 🚗🚕🚙🚌🚎🚒🚐🚚
      🚗🚕🚙🚌🚎🚒🚐🚚
      2018-08-30

      小程序直接setData就行吧,不需要知道有没有改变,没改变就不更新视图啊,push是有getter和setter的

      2018-08-30
      回复
  • 再见,电脑崽
    再见,电脑崽
    2018-08-30

    setData搭配wxs使用就可以实现。

    2018-08-30
    赞同
    回复 5
    • 木头
      木头
      2018-08-30

      谢谢回答,不过没有找到可以写出监听的相关事例和文档

      2018-08-30
      回复
    • 再见,电脑崽
      再见,电脑崽
      2018-08-30回复木头

      i can help you.

      2018-08-30
      回复
    • 木头
      木头
      2018-08-30回复再见,电脑崽

      你能写个例子吗,监听一个数组,改变这个数组的值或者数组的长度,然后让监听qi打印出改变前后的数组值?

      另外我用的wepy框架,如果是对应这个框架的写法那就更好不过了,我手头也收集了一个用new Proxy写的一个方法,不过有点缺陷,如果你能修正这个缺陷也是很好的。

      如果在这里解释的不方便可以加我微信,我在下个评论里给你,感谢帮助!

      2018-08-30
      回复
    • 木头
      木头
      2018-08-30回复木头

      Watchmen_forever

      2018-08-30
      回复
    • 再见,电脑崽
      再见,电脑崽
      2018-08-30回复木头

      wechatide://minicode/Lcv9a3mv722m

      2018-08-30
      回复