复习精简版快速学vue3

vue2中。如果给一个之前没有定义的属性赋值,会得不到时实更新:

this.obj.b=2 //由于这个属性之前没有定义,是不支持动态响应,只能用this.$(this.obj,'b',2)
也就是说vue对数据处理不是很完美 ,主要是因为考虑性能问题。vue数据需要用ref react
import {ref,} from 'vue'
let srt = ref('1') //用ref 处理的ref,获取值时需要用XXX.valueive
ref 支持简单数值,数组,也对对象,但是设计上他不会深度遍历对象子属性的属性,可用于后端接收值,一般用于接收后我们不会在去修改太深层的值,但和vue 比起来,ref 也经可以处理之前没有定义的属性,不用需要set,get这些方法来处理修改数值,
例: let str = ref{['a','b','c']};
let srt1 = reactive('1')
vue2 和vue3 最大的区别的数据响应处理
vue2 用的是Object.defineProperty
vue3用的是new Proxy
let o ={a:1,b:2} let m = {};
给一个对象增加属性//下面代码给m增加属性a
简单复习一下defineProperty Object.defineProrty(m, 'a')
如果要把一个对象的属性全部添加到对象需要用遍历,
for (let k in o){
  Object.defineProperty(m,k,{
  get(){
  return o[k]
}
  get(){
}
})
}
//////////////////////////////////////////////////////////////////////
解决vue自动导包 插件安装 npm -i unplugin-auto-import -D
路由vue2 和vue3的区别
let router = usrRouter(); ==> this.$router
let router = usrRoute() == this.$route

 

 









 

posted @ 2022-12-06 23:01  稷下元歌  阅读(66)  评论(0编辑  收藏  举报