VUE中元件傳值

2021-09-29 05:09:46 字數 1644 閱讀 3575

(1)父傳值v-bind

父元件通過v-bind:data="data"傳值,簡寫等同於:data="data"將資料傳遞給引用的子元件

(2)子接收props

子元件通過props接收父元件傳的值

props:},

//簡單寫法

props:

['data'

]

props是單向繫結的,子元件不可以修改父元件的值,在子元件中修改props中的值會報錯,想修改父元件傳過來的值可以先拷貝出乙個副本,改變副本的值

(3)使用

在子元件中即可以直接使用}使用

法一:通過$emit觸發事件進行傳值

(1)子觸發事件

methods:

},

(2)父監聽事件

v-on: del="deletetodo"簡寫@del="deletetodo"

"deletetodo"

>

<

/item>

//監聽del事件,處理函式為deletetodo,此函式第乙個引數為子元件$emit丟擲來的引數this.todo.id

(3)使用

deletetodo

(id)

,

法二:通過v-model雙向繫結

法一:通過父元件中轉

(1)子1通過$emit傳值給父

(2)父再通過v-bind傳值給子2

法二:借助bus**事件匯流排

bus(乙個空的vue物件)作為介質,輔助兄弟元件的傳值

(1)新建bus.js資料夾來new乙個vue空物件

import vue from

'vue'

export

default

newvue

()

(2)子1通過bus.$emit觸發事件傳值

//引入bus

import bus from

...methods:

}

(3)子2通過bus.$on監聽事件獲取值

//引入bus

import bus from

...//在created鉤子內使用

//如果在mounted使用,它可能接受不到其他元件來自created鉤子發出的事件

created()

//使用$bus.off解除,因為元件銷毀後,就沒必要把監聽的控制代碼儲存在vue-bus裡了

beforedestroy()

Vue元件傳值 父子元件傳值

父元件可以引入 使用子元件,從業務上看,該父元件有可能對子元件有個性化需求,為了體現元件的靈活多變,可以通過傳值實現。應用情景 語法 父元件要在子元件標籤上通過屬性值方式傳值 子元件標籤 name value name value name value 子元件標籤 子元件接收並應用值,具體通過pro...

vue 元件傳值 父子元件傳值,兄弟元件傳值

父向子 v bind props 子元件 子元件 props msg props接收 props 驗證 props food接受數值型別的引數,如果不傳入的話預設就是100 food fooe接受物件型別的引數 fooe foof使用乙個自定義的驗證器 foof foog props 是單向繫結的 ...

Vue元件傳值

學習vue的傳值心得,剛入門vue,大佬勿噴,請多多指教。1.父元件傳值子元件 父元件巢狀子元件式,在標籤裡繫結 子元件用props屬性接收 例 父元件傳值,為縮寫,等同於v bind obj item props obj count 子元件接收傳值,可直接使用,但是推薦在下方重新賦值給新變數再使用...