vue lodash深拷贝

记录今天在做vue练习时发现的一个问题:
当我修改子组件的值的时候,父组件的值也在跟着变
然后我就蒙圈了,不是说子组件不可以修改父组件的值的吗?
难道官方骗我?想想也不可能啊 ,,,以为是自己哪里的代码写错了,检查、重新写了十来分钟,发现还是一样的,看来没办法了就问下万能的度娘吧
在这里插入图片描述

然后度娘的结果是:vue父子组件传递数据的时候,浅拷贝会出现修改数据相互影响的情况
既然直接传值不可以,那就进行深拷贝吧,把要处理的数据深拷贝一份出来 之后操作深拷贝的数据即可

深拷贝的方法应该挺多,就比如说这个:JSON.parse(JSON.stringify(this.XX)) this.xx为父组件传来的数据。

既然是练习,前些天刚好用了lodash,那就继续用吧,(不能白装了这个插件啊)
我承认,我不知道它那个M是什么含义 我那完全是瞎猜的…
在这里插入图片描述
在项目中导入
官方推荐用下划线“_”命名
// 导入深拷贝这个插件

import _ from 'lodash'

使用:
cloneDeep:深拷贝的函数
需要传入你需要进行深拷贝的数据(对象)
它会返回一个对象,接收 然后操作这个深拷贝后的数据就可以了

this.updataRoleFrom = _.cloneDeep(row)

然后完美解决

小白记录,利于下次排查

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值