vue3如何直接修改reactive定义的变量
作者:如白驹过隙
这篇文章主要介绍了vue3如何直接修改reactive定义的变量问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
vue3直接修改reactive定义变量
reactive定义的数组或者对象,不能直接赋值修改,否则定义的数据将失去响应性
可以通过Object.assign修改
let rowData = reactive({}) // 修改rowData的值 Object.assign(rowData, row)
vue批量修改reactive中的值
reactive声明响应式对象,但修改值会比较麻烦,比如
<script setup> import {reactive} from 'vue'; let obj = reactive({ id:1, name:'张三', age:18 }) obj.id = 2; obj.name = '李四'; </script>
但是不能直接赋值,这样会失去响应性
obj = {id:2,name:'李四'}
解决方法
使用Object.assign
obj = Object.assign(obj,{id:2,name:'李四'})
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。