爱吃猪蹄_ 2022-08-23 16:17 采纳率: 100%
浏览 25
已结题

Vue3中的shallowReactive监听问题

问题遇到的现象和发生背景

Vue3中的 shallowReactive 定义的对象,深层次数据改变之后,会被监听到
通过方法改变的salary会被监听到,直接在页面上修改的不会被监听到

问题相关代码,请勿粘贴截图
<h3>对象shallowReactive:{{shallowObj}}</h3>
<h3>对象shallowReactive:{{shallowObj.job.j1.salary}}</h3>
<button @click="ageAdd">更新字段</button>会被监听到<br/>
<button @click="shallowObj.job.j1.salary ++">增加薪资</button>不会被监听到
import { shallowReactive } from 'vue'
export default {
  setup(){
    let shallowObj = shallowReactive({
      name:'name',
      job:{
        j1:{
          salary:30
        }
      }
    })
    function ageAdd(){
      shallowObj.name +='~'
      shallowObj.job.j1.salary ++
      console.log(shallowObj);
    }
    return {
      ageAdd,
      shallowObj,
    }
  },
}
  • 写回答

1条回答 默认 最新

  • Z_ One Dream 2022-08-23 16:31
    关注

    因为你改了 name
    over

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 9月1日
  • 已采纳回答 8月24日
  • 修改了问题 8月23日
  • 创建了问题 8月23日

悬赏问题

  • ¥15 Vue3 大型图片数据拖动排序
  • ¥15 划分vlan后不通了
  • ¥15 GDI处理通道视频时总是带有白色锯齿
  • ¥20 用雷电模拟器安装百达屋apk一直闪退
  • ¥15 算能科技20240506咨询(拒绝大模型回答)
  • ¥15 自适应 AR 模型 参数估计Matlab程序
  • ¥100 角动量包络面如何用MATLAB绘制
  • ¥15 merge函数占用内存过大
  • ¥15 使用EMD去噪处理RML2016数据集时候的原理
  • ¥15 神经网络预测均方误差很小 但是图像上看着差别太大