收藏
回答

小程序自定义组件中observers触发数据更新,但是视图没有触发更新?

这是父组件中引入子组件,并传入两个对象(数组和JSON对象);

这是子组件中的代码结构,并有observers

监听传入的数组的变化,在setChangeArr这个方法中,有对传入数组的处理,并setData。各种方法都试了,加计时器,加nextTick等,甚至setData后再次set,都没有用,视图无法更新(已无力吐槽了,要不是老板要这个,哪个S,B才会玩这个垃圾玩意)

去搜了关于“小程序自定义组件数据更新,视图无法更新”的问题,解决办法都大同小异


所以小程序是没法解决这个坑?

he~tui


回答关注问题邀请回答
收藏

3 个回答

  • 张旺
    张旺
    01-27

    你是无力吐槽,你确定是小程序的锅?看不到你的那个方法内部的实现,但我敢说你就算用react,也一样会出现问题。我还是第一次见有人把map当forEach用的😂

    01-27
    有用 2
    回复
  • 心心情
    心心情
    01-15

    用setInterval解决一下呢,间隔100ms执行一次setData({}),执行次数超出数组长度就clearInterval()


    01-15
    有用
    回复 1
    • 心心情
      心心情
      01-15
      js执行的速度很快的,所以这样循环执行视图层看不到变化
      01-15
      回复
  • 风禾
    风禾
    01-15

    可能是我不太理解需求。但是这种单向数据流动的东西,父组件在引用子组件时传入的响应式数据如果改变的话,是会触发子组件重新渲染数据的吧,没必要监听吧

    01-15
    有用
    回复
登录 后发表内容
问题标签