评论

setData设置数组时,模板中绑定到标签属性的数组长度不会改变

为什么一定要提问题或者发文章,我就想报BUG

为什么一定要提问题或者发文章,我就想报BUG

wxml代码

<view class="container">
  <view wx:for="{{arr}}" wx:key="{{index}}" data-length="{{arr.length}}" bindtap="onTap">{{item}} {{arr.length}}</view>
</view>

js代码

Page({
  data: {
    arr: [1, 2, 3]
  },
  onTap: function() {
    this.setData({
      'arr[3]': 1
    })
    console.log(this.data.arr)
  }
})

可以看到点击之后标签内的arr.length被更新了,但是前三个标签的data-length属性仍然为3

最后一次编辑于  2019-12-20  
点赞 1
收藏
评论

3 个评论

  • one for all
    one for all
    2019-12-21

    你可这样写,你这问题很久之前就有人提问

    2019-12-21
    赞同 1
    回复 13
    • 村姑翠花
      村姑翠花
      2019-12-21
      这两种写法有什么不一致吗?setData不是支持这种方式吗??
      2019-12-21
      回复
    • one for all
      one for all
      2019-12-21回复村姑翠花
      你自己运行一下,看看区别
      2019-12-21
      回复
    • 村姑翠花
      村姑翠花
      2019-12-21回复one for all
      我知道区别,我是说微信支持这种setData的方式,为什么两种方式运行下来,结果会不一样?
      2019-12-21
      回复
    • one for all
      one for all
      2019-12-22回复村姑翠花
      支持归支持,结果为什么要一样呢?区别在哪呢,说说
      2019-12-22
      回复
    • 王亚琪
      王亚琪
      2019-12-23回复one for all
      区别在于差量
      2019-12-23
      回复
    查看更多(8)
  • 王亚琪
    王亚琪
    2019-12-24

    https://docs.alipay.com/mini/framework/page-detail#pageprototypesplicedatadata-object-callback-function


    我只想实现个这玩意,官方能不能进来瞅瞅

    2019-12-24
    赞同
    回复
  • 村姑翠花
    村姑翠花
    2019-12-21

    这个真是涨姿势了,多谢分享。

    2019-12-21
    赞同
    回复
登录 后发表内容