真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Vue2.0父組件與子組件之間的事件發(fā)射與接收實例代碼

關(guān)于vue2.0的事件發(fā)射和接收,大家都知道$dispatch$broadcast在vue2.0已經(jīng)被棄用了,取而代之的是更加方便快捷的方式,使用事件中心,組件通過它來互相通信,不管組件在哪一個層都可以通過實例化一個空Vue來實現(xiàn)。上案例:                       

成都創(chuàng)新互聯(lián)公司主要從事做網(wǎng)站、成都做網(wǎng)站、網(wǎng)頁設(shè)計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)織金,十余年網(wǎng)站建設(shè)經(jīng)驗,價格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):028-86922220

Vue2.0父組件與子組件之間的事件發(fā)射與接收實例代碼                                                                                                         

        這是自己寫的一個小案例,功能就是點擊子組件的加減按鈕控制父組件的數(shù)量變化。原理就是子組件的加減按鈕點擊時分發(fā)事件,父組件接收事件。相信html和css的代碼大家都沒問題,這里不贅述,直接說js部分,首先在項目初始化時先給data添加名為eventHub的空Vue對象,作用是讓任何組件都可以調(diào)用事件發(fā)射和接收的方法。代碼如下:

Vue2.0父組件與子組件之間的事件發(fā)射與接收實例代碼

        在點擊加號按鈕時向父組件派發(fā)事件:

Vue2.0父組件與子組件之間的事件發(fā)射與接收實例代碼

        由于我寫的json數(shù)據(jù)是兩層的:

Vue2.0父組件與子組件之間的事件發(fā)射與接收實例代碼

        所以兩層循環(huán)把數(shù)據(jù)展示在頁面上,要精確將某個食物的數(shù)量顯示必須知道第一大類和這一大類下這個食物的索引值,在這里在html那里先把兩個索引傳進(jìn)子組件,在分發(fā)事件時再和數(shù)量一起打包成對象發(fā)射給父組件。

Vue2.0父組件與子組件之間的事件發(fā)射與接收實例代碼

        記得子組件要在props里對child,parent進(jìn)行聲明,接著是父組件對發(fā)射過來的countFunc進(jìn)行接收:

Vue2.0父組件與子組件之間的事件發(fā)射與接收實例代碼

        到了這個時候?qū)⒆咏M件傳過來的countFunc里的obj進(jìn)行console.log(),你會發(fā)現(xiàn)父組件已經(jīng)接收了一個對象:Object {count: 1, index: 0, parent: 0},也就是當(dāng)我點擊一下蘋果的加號按鈕時傳過來count為1說明數(shù)量為1,parent索引為0說明是第一大類,index為0說明是第一大類下的蘋果,至此已經(jīng)實現(xiàn)了父子組件之間的事件發(fā)射和接收。

        完整代碼如下:

1.父組件:


Vue2.0父組件與子組件之間的事件發(fā)射與接收實例代碼

Vue2.0父組件與子組件之間的事件發(fā)射與接收實例代碼

Vue2.0父組件與子組件之間的事件發(fā)射與接收實例代碼

Vue2.0父組件與子組件之間的事件發(fā)射與接收實例代碼

2.子組件:


Vue2.0父組件與子組件之間的事件發(fā)射與接收實例代碼

Vue2.0父組件與子組件之間的事件發(fā)射與接收實例代碼

Vue2.0父組件與子組件之間的事件發(fā)射與接收實例代碼

總結(jié)

以上所述是小編給大家介紹的Vue2.0父組件與子組件之間的事件發(fā)射與接收,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對創(chuàng)新互聯(lián)網(wǎng)站的支持!


網(wǎng)頁標(biāo)題:Vue2.0父組件與子組件之間的事件發(fā)射與接收實例代碼
轉(zhuǎn)載來于:http://weahome.cn/article/ipsoce.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部