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)
}