流浪的菜袅 2023-05-04 14:52 采纳率: 79.5%
浏览 33
已结题

微信小程序修改data值视图没有改变

<cover-view class="root">
    <cover-view wx:for="{{tabBar.list}}" data-index="{{index}}" class="tabView" bindtap="btnTab">
        <cover-image class="imgView"  src="{{item.iconPath}}"></cover-image>
        <cover-view class="txtView">{{item.text}}</cover-view>
    </cover-view>
</cover-view>
methods:{
        btnTab(e){
            let index = e.currentTarget.dataset.index
            let tabBar = this.data.tabBar
            tabBar.list[index].src = tabBar.list[index].selectedIconPath
            this.setData({
                tabBar:tabBar
            })
            console.log('index',index);
            console.log('tabBar',this.data.tabBar);
        },
    },

为什么data中的数据改变了,视图并没有做出改变啊

  • 写回答

2条回答 默认 最新

  • RivaJ 2023-05-04 15:56
    关注

    可能是因为更新前后的tabBar是同一个对象,可以尝试将第4行改为

    let tabBar = {...this.data.tabBar}
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 6月3日
  • 已采纳回答 5月26日
  • 创建了问题 5月4日