元件
Last updated
Last updated
引入元件的方式
1.宣告 app 後再用 app.component 建立
2.import component 後,直接在建立 app 時,放入 components 屬性中。(要用 import 要有執行環境,如 Vue Cli)
下方是 Vue 2
元件執行模式:一個元件可以分為資料(model)和視圖(view),資料更新時,視圖也會自動更新。在視圖中又可以綁定一些事件,它們觸發methods裡指定的方法,進一步可以改變資料、更新視圖。
元件內的data元素必須是函數,並將資料return為物件格式。
元件有分全域註冊和局部註冊兩種。
元件傳遞資料的方式。
父傳子:props
子傳父:$emit
通用:bus
宣告空的元件
用bus.$emit()傳入
用bus.$on()取值
直接取得父元件(元件間會產生依賴):$parent
直接取得子元件(元件間會產生依賴):$refs
用ref定位,再用$refs取值
slot(將靜態範本的內容分發給元件中的slot)
單一slot:可無名稱。
具名slot:命名後可分發多個slot。
作用域slot:反向將slot內的資訊文字動態產生在靜態範本內,使靜態的範本內有可變動的資料。
存取slot:mounted後用$slots
其它
動態元件:使用is特性來選擇要掛載的元件
$nextTick:因為Vue在更新data後,不是即時更新DOM,而是使用佇列緩衝所有的資料改變。所以$nextTick就是用來知道什麼時候DOM更新完成,然後再執行其後的程式。
X-Templates:一種在HTML中,定義template的方式,不用考慮換行的問題。