Vue 数组没深度监听,导致数据变化了,视图不变化的解决方案

52 篇文章 2 订阅
23 篇文章 0 订阅

前言

  • 在我们项目中 或多或少 会有些 数组 嵌套 对象 ,然后 对象 内嵌套 数组,从而在Vue项目中,针对数组达不到多层次的监听,让我们的视图做不到随意变化
  • 而在网上搜罗了下解决方案:
    • 使用 :this.$set(this.data, 'attrName', 'value')
      - this.$set( 要绑字的数据,添加或修改的属性名称,要赋的值 )
    • 在我们变化值后,执行:this.$forceUpdate() 重新渲染视图层

解决方案

  • 在拿到值后,改变 Vue 能监听到的变量,从而达到 值变化 视图变化
  • 执行逻辑:
    - 拿到
    - 把 付给数据源的 属性
    - 在视图上就会有变化了,每当拿到值就给数据源属性赋值
我的执行代码
@click.native.prevent="() => {
	data[i][ifd].va = radio.id || radio.dicItemCode;
	ift.cf(radio.id || radio.dicItemCode);
}"
	// data[i][ifd].va 数据源属性
	// click 操作dom的事件类型
	// ift.cf 自定义的回调
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值