vue模版語法及計算屬性和偵聽器

模版語法:

1、插值表達式

2、v-text

3、v-html

4、v-on

5、v-bind

注:指令後面都是j s表達式,表達式後可跟字符串

例:v-text=“name + 'lee' ";

計算屬性

1、計算屬性(computed):顧名思義就是通過計算得來的;

 特點:

內置緩存、 緩存機制

當計算屬性的兩個變量未發生改變就不會重新計算,會一直用上次計算的結果;(提高性能)

簡而言之依賴屬性未發生改變就不會重新計算,如果依賴發生改變,計算屬性會重新計算一次;(並且語法簡潔性能高)

2、方法(methods)形式也可以實現計算屬性,單沒緩存機制,性能低

3、幀聽器(watch)也有緩存機制,但語法複雜;

計算屬性的兩個方法:

set:設置值時調用;

get: 獲取值時調用;

vue中的樣式綁定

1、class對象綁定     :class{}

2、class和數組綁定; :class[]

:style ="styleObj" style對象綁定, style綁定數組;

“?”是如果if的意思;

vue條件渲染:

v-if : 節點移除或重新渲染;(性能低。節點刪除或增加)

v-show:是存在的只是樣式爲display:none;(性能高)

v-if和v-else必須一起使用;

“key"值就相當於id,在頁面上是唯一的;

vue中的列表渲染:

v-for:數組循環;

index做key值費性能,帶key值可以提高性能;

改變數據引用也可以改變數據;

對象也可以做循環,遍歷對象直接加值不可用,但是可以直接改遍對象引用可以;

vue中的set方法:

可在對象中增加數據用set方法;

set是全局方法,也可以是實例方法;

數組中的set方法:

該變數組頁面也是也跟着變的方法有三種:

1、直接改數組引用;

2、數組變異方法(pop\push)

3、set方法;

改變對象數據也你那也跟着變的方法有兩種:

1、改變對象引用

2、set方法

vue組件:

1、is屬性(多用於table)解決模版標籤上的bug(解訣h5標籤上bug);

2、data屬性。在vue實例裏面定義 data可以是一個對象,但是在子組件裏定義data必須是一個函數;

3、ref屬性 vue中如何操作dom,就是通過引用ref;

在vue中由於單向數據流:

父組件可以向子組件傳參數,通過屬性,但子組件不可以修改父組件拆開的參數;

父組件通過屬性向子組件傳值;

子組件通過事件觸發向父組件傳值;

組件參數校驗與非props特點:

1、組件參數校驗就是子組件對父組件傳來的值約束

   約束的內容有:

 type:數據類型;

 required :必傳;

default: 默認值

validator: 自定義校驗器

2、props特性:

  非props特性: 

    屬性會展示在dom 節點上;

    父傳子組件不接收,子組件不能使用父傳過來的數據;

props特性:

   父組件傳子組件接收,然後在組件裏使用父組件傳來的數據;

屬性不易展示在dom標籤上;

組件綁定原生事件:

只需在綁定事件後加 .native就可以了

非父子組件傳值:

1、vuex框架來解決;

2、bus/總線/發佈訂閱模式/觀察者模式;

vue中的使用插槽(slot)

子組件從外部插入內容;

作用域插槽必用用template開頭結尾;

動態組件與v-once指令;

v-once指令可以提高靜態資源的性能,也會把資源放到內存中;

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章