vue 内存中数组数据改变,但是视图未更新

遇到一个问题,在methods的方法中,数组元素已经改变,但是视图依然显示之前的渲染数据.通过找了很多方法,都不能实现,比如 f o r c e U p d a t e , 强 制 更 新 , 在 这 里 也 没 有 真 正 的 解 决 我 的 问 题 . 最 终 的 解 决 问 题 是 通 过 forceUpdate,强制更新,在这里也没有真正的解决我的问题.最终的解决问题是通过 forceUpdate,,.nextTick()方法
解决方法
因为通常编辑和添加会处理为共用同一个组件的方式,通过路由参数判断当前状态是编辑操作还是添加操作

        // 删除当前点击的模糊搜索框
        handleDel(data){
            let me = this;
            me.details.courseIds.splice(data,1)
            if(me.goodsId&&me.goodsId!=''){// 编辑时
                let list = me.details.courseList.filter((item,index)=>{
                    if(index==data) return false;
                    return item
                })
                me.details.courseList = [];
                me.$nextTick(()=>{
                    me.details.courseList=list;
                })
                return (
                    me.details.courseList, me.details.courseIds
                )
            }else{// 添加时
                me.courseList.splice(data,1);
                return (
                    me.courseList, me.details.courseIds
                )
            }
        },
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值