鍍金池/ 問(wèn)答/HTML/ vue組件通信到底是怎么回事(element)

vue組件通信到底是怎么回事(element)

前端初學(xué)者,最近學(xué)的vue,但是組件通信這部分我沒(méi)理解

組件是孤立實(shí)例,也就是在vue根實(shí)例或者父組件
引入<student>這種自定義子組件標(biāo)簽的時(shí)候不能給子組件標(biāo)簽 的元素特性v-if v-model v-for v-on以及其他特性等等綁定
根實(shí)例的data methods 等等,我這樣理解沒(méi)錯(cuò)吧?

但是我看到網(wǎng)上有些例子,比如element ui就經(jīng)常直接在子組件比如<el-button>中
v-model="父組件data" v-on:cilck="父組件method"

難道是我理解錯(cuò)了?

回答
編輯回答
萌面人

最基本的:emit up; prop down!

使用了vux就相當(dāng)于是React的Redux里的store,存在應(yīng)用頂層??梢员幌旅嫒魏谓M件接收。

2018年1月3日 19:44
編輯回答
念初

看過(guò)了文檔,沒(méi)看源碼,基本明白了

那些ui和例子還是用了prop和自定義事件

但是因?yàn)橹苯幽贸鼋M件省略了源碼所以導(dǎo)致我沒(méi)弄懂

綁定父組件data和methods都是一樣的。

要么子組件先定義一個(gè)prop 然后在子組件標(biāo)簽中bind:prop="父data"。

要么就是在子組件定義(注冊(cè))時(shí),模板里面先on:click=子組件的method,這個(gè)method會(huì)emit一個(gè)自定義事件。
然后我們使用子組件標(biāo)簽時(shí)就可以直接on:自定義事件="父method

兩種方法都能實(shí)現(xiàn)雙向綁定

至于v-model是一種語(yǔ)法糖,實(shí)際上是v:bind prop和v-on 的復(fù)合

2018年4月24日 00:51