欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 汽车 > 维修 > VUE3中ref与reactive

VUE3中ref与reactive

2024/10/25 2:26:31 来源:https://blog.csdn.net/weixin_49352307/article/details/142140011  浏览:    关键词:VUE3中ref与reactive
  • ref:支持所有类型
  • reactive:只支持引用类型(Obj,Array...)
  • 两者都是实现数据视图响应式

JS逻辑使用中

ref:需要使用.value

reactive:不需要使用.value

 <el-button @click="handle()" type="primary">操作ref</el-button>
import { ref, reactive } from "vue";const refobj = ref({name:'小李'})
const reactiveobj = reactive ({name:'小红'})const handle = ()=>{refobj.value.name='小明' // refobj :{name:'小明'}reactiveobj.name='小花'  // reactiveobj :{name:'小花'}
}

reactive基于proxy 数组不能直接赋值 否则破坏响应式对象

解决方法1:利用push+...解构

let list = reactive<string[]>([])
const listhandle = () => {let res = ['as', 'asd', 'asdf']list = res // 赋值失败!list.push(...res) //数组利用解构赋值成功!console.log(list);}

解决方法2:声明对象一个,数组为对象中的属性进行赋值

 

 

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com