子元件是不能引用父元件或者vue例項的資料的,但是,在開發中,往往一些資料確實需要從上層傳遞到下層:
比如在乙個頁面中,我們從伺服器請求到了很多的資料。其中一部分資料,並非是我們整個頁面的大元件來展示的,而是需要下面的子元件進行展示。
這個時候,並不會讓子元件再次傳送乙個網路請求,而是 直接讓大元件(父元件)將資料傳遞給小組件(子元件)。
如何進行父子元件間的通訊呢?
通過props向子元件傳遞資料
通過自定義事件向父元件傳送訊息
在下面的**中,我直接將vue例項當做父元件,並且其中包含子元件來簡化**。
真實的開發中,vue例項和子元件的通訊和父元件和子元件的通訊過程是一樣的。
dom框架
建立vue例項
建立元件構造器物件
編寫元件模板(這裡特指template標籤內的內容)
註冊元件(全域性、區域性)
填充dom框架(繫結)
props基本用法
在元件中,使用選項props來宣告需要從父級接收到的資料。
props的值有兩種方式:
字串陣列,陣列中的字串就是傳遞時的名稱。
物件,物件可以設定傳遞時的型別,也可以設定預設值等。
Vue 之父子元件間的通訊
兄弟元件間傳值 一覽圖 1 靜態傳值 1 在父元件中 在子元件佔位符中直接寫 引數名 引數值 father this is father h1 靜態 父傳子 字串 msg from father.div template 引入子元件,必須 import child from components c...
Vue元件化之父子元件
在父元件裡使用子元件時,父元件的模板最外層一定要有div塊 元件內部是無法訪問vm例項裡的data資料的,元件有自己的儲存資料的位置。元件也有data methods 生命週期函式等屬性,但data必須是乙個函式且返回的是乙個物件,物件內部儲存著資料。為什麼元件裡的data必須是函式形式?當重複使用...
Vue2 0 之父子兄弟元件間通訊
childa childb div template type text ecmascript 6 import childa from components a.vue import childb from components b.vue export default script lang s...