1.1 关于 template (html 携带的)


关于这个大家会想到后面的template 但是不要混淆,这个只是一个隐形的div,没有div的占位,但是可以包裹元素


1.2 关于set的双向绑定的小秘密


set有大故事,并不是想的那么简单


首先我们都应该知道: set 和 get 是data里面的属性携带的方法。如同java里,你如果要定义一个属性那么必然要写上 setter和getter方法 ,才能访问这个值。

这里涉及到 生命周期函数里的 beforeCreate 。这里就是把props和data里面的数据进行双向绑定。

这里面就有一个概念了,比如当前我们data里面有一个 obj 但是没有赋值


data(){
	return {
		obj:{}
   }
},
mounted(){
	//this.$set(obj,age,20)
	this.obj.age = 20
}

我们在 页面中 写入 {{ obj }},页面里并不是显示 { age :20} 而是 一个空对象,但是我们 点击 任何一个 this.$set 触发函数的时候,这个上述的 对象就会变成如期的效果,原因就是 this.$set update会把内存中直接渲染(可以那么理解)

本章的例子就是:$set的上下移动


moveUp(index){
  let prev = this.list[index - 1] //把前面的值先备份起来
  this.list[index - 1] = this.list[index]
  this.$set(list,index,prev)
}