這篇文章主要介紹vue中props將父組件方法傳遞給了什么,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
創(chuàng)新互聯(lián)公司成立十年來,這條路我們正越走越好,積累了技術(shù)與客戶資源,形成了良好的口碑。為客戶提供成都做網(wǎng)站、網(wǎng)站制作、網(wǎng)站策劃、網(wǎng)頁設(shè)計(jì)、主機(jī)域名、網(wǎng)絡(luò)營銷、VI設(shè)計(jì)、網(wǎng)站改版、漏洞修補(bǔ)等服務(wù)。網(wǎng)站是否美觀、功能強(qiáng)大、用戶體驗(yàn)好、性價(jià)比高、打開快等等,這些對(duì)于網(wǎng)站建設(shè)都非常重要,創(chuàng)新互聯(lián)公司通過對(duì)建站技術(shù)性的掌握、對(duì)創(chuàng)意設(shè)計(jì)的研究為客戶提供一站式互聯(lián)網(wǎng)解決方案,攜手廣大客戶,共同發(fā)展進(jìn)步。
在vue中,props將父組件方法(數(shù)據(jù))傳遞給子組件。父組件發(fā)送的形式是以屬性的形式綁定值到子組件身上,接著子組件用屬性props去接受父組件傳過來的值。
在這里先定義一下,相對(duì)本案例來說:App.vue是父組件,Second-module.vue是子組件。
一、首先,值肯定是定義在父組件中的,供所有子組件共享。所以要在父組件的data中定義值:
二、其次,父組件要和子組件有契合點(diǎn):就是在父組件中調(diào)用、注冊(cè)、引用子組件:
調(diào)用:
注冊(cè):
引用:
三、接下來,就可以在父組件和子組件鏈接的地方(即引用子組件的標(biāo)簽上),把父組件的值綁定給子組件:
這里我綁定了兩個(gè)值,一個(gè)是數(shù)組,一個(gè)是字符串。
特別注意:
總的來說父傳子就是這三個(gè)步驟:父組件中定義值、調(diào)用子組件并引用、在引用的標(biāo)簽上給子組件傳值。
但是注意是要用 v-bind: 綁定要傳的值,不用v-bind直接把值放到標(biāo)簽上,會(huì)被當(dāng)成html的節(jié)點(diǎn)屬性解析的。
四、最后,子組件內(nèi)部肯定要去接受父組件傳過來的值:props(小道具)來接收:
另一種接收方式:這里注意使用字符串包裹,再這里踩了一下坑。
具體的接收方式看官方文檔~
五、這樣,子組件內(nèi)部就可以直接使用父組件的值了。
但是有要注意的點(diǎn):
子組件接受的父組件的值分為——引用類型和普通類型兩種,
普通類型:字符串(String)、數(shù)字(Number)、布爾值(Boolean)、空(Null)
引用類型:數(shù)組(Array)、對(duì)象(Object)
其中,普通類型是可以在子組件中更改,不會(huì)影響其他兄弟子組件內(nèi)同樣調(diào)用的來自父組件的值,
但是,引用類型的值,當(dāng)在子組件中修改后,父組件的也會(huì)修改,那么后果就是,其他同樣引用了改值的子組件內(nèi)部的值也會(huì)跟著被修改。除非你有特殊的要求這么去做,否則最好不要這么做。
父組件傳給子組件的值,在子組件中千萬不能修改,因其數(shù)據(jù)是公用的,改了所有引用的子組件就都改了。
先看一個(gè)效果頁面:
左邊的列表欄是引用父組件值的第一個(gè)子組件,右邊是引用了同樣值的第二個(gè)子組件,他們都有一樣的信息:
開發(fā)工具中看也是明顯的6條數(shù)據(jù):
注意對(duì)比看最后一條數(shù)據(jù): 點(diǎn)擊右邊區(qū)域第一個(gè)藍(lán)色按鈕后,就少了一組數(shù)據(jù),當(dāng)然是兩邊同時(shí)少的。
同樣看開發(fā)工具中,App組件的數(shù)據(jù)是少了一條的。
但是傳遞的是字符串、數(shù)字、布爾值的時(shí)候,在一個(gè)組件中修改就不會(huì)影響到其他組件的信息。就沒有關(guān)系。
我點(diǎn)擊第二個(gè)藍(lán)色按鈕,,就只有第二個(gè)子組件里的title改變了,第一個(gè)的組件沒有變動(dòng)
嘗試過后,值確實(shí)改了,但是vue給我彈出了一個(gè)警告:
警告:避免直接對(duì)一個(gè)道具進(jìn)行修改,因?yàn)楫?dāng)父組件重新呈現(xiàn)時(shí),該值將被覆蓋。相反,使用基于支柱的數(shù)據(jù)或計(jì)算屬性。
官網(wǎng)說法:
以上是“vue中props將父組件方法傳遞給了什么”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!