談?wù)剉ue中mixin的一點(diǎn)理解
vue中提供了一種混合機(jī)制--mixins,用來更高效的實(shí)現(xiàn)組件內(nèi)容的復(fù)用。最開始我一度認(rèn)為這個(gè)和組件好像沒啥區(qū)別。。后來發(fā)現(xiàn)錯(cuò)了。下面我們來看看mixins和普通情況下引入組件有什么區(qū)別?
組件在引用之后相當(dāng)于在父組件內(nèi)開辟了一塊單獨(dú)的空間,來根據(jù)父組件props過來的值進(jìn)行相應(yīng)的操作,單本質(zhì)上兩者還是涇渭分明,相對(duì)獨(dú)立。
而mixins則是在引入組件之后,則是將組件內(nèi)部的內(nèi)容如data等方法、method等屬性與父組件相應(yīng)內(nèi)容進(jìn)行合并。相當(dāng)于在引入后,父組件的各種屬性方法都被擴(kuò)充了。
單純組件引用:
父組件 + 子組件 >>> 父組件 + 子組件
mixins:
父組件 + 子組件 >>> new父組件
值得注意的是,在使用mixins時(shí),父組件和子組件同時(shí)擁有著子組件內(nèi)的各種屬性方法,但這并不意味著他們同時(shí)共享、同時(shí)處理這些變量,兩者之間除了合并,是不會(huì)進(jìn)行任何通信的。最開始看到mixins的時(shí)候,天真的我似乎看到了一種向下的類似vuex的數(shù)據(jù)共享方案,心情十分激動(dòng)啊。
下面給大家介紹下Vue中的mixin
一,mixin是什么
mixin文件是一個(gè)對(duì)象,可以包含vue組件的任意成分。是分發(fā)Vue組件可復(fù)用功能的非常靈活的方式,當(dāng)mixin被組件使用時(shí),所有minxin里的屬性/方法會(huì)與組件里的屬性/方法混合。
二,mixin使用
在Vue組件中可以有mixins屬性,該屬性值類型為數(shù)組。將mixin引入,作為mixins數(shù)組的元素mixins: [mixin]
組件A應(yīng)用了mixin,兩者的屬性如methods,components和directives,將被混合為同一個(gè)對(duì)象,如果methods,components和directives中有同名的屬性,則mixin中的將會(huì)被忽略。同名鉤子函數(shù)會(huì)組成數(shù)組并都會(huì)被調(diào)用,并且mixin的鉤子函數(shù)會(huì)比組件的鉤子函數(shù)先被調(diào)用。
總結(jié)
以上所述是小編給大家介紹的vue中mixin,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
vue中如何給el-table-column添加指定列的點(diǎn)擊事件
elementui中提供了點(diǎn)擊行處理事件,下面這篇文章主要給大家介紹了關(guān)于vue中如何給el-table-column添加指定列的點(diǎn)擊事件,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下2022-11-11VUE多個(gè)下拉框?qū)崿F(xiàn)雙向聯(lián)動(dòng)效果
這篇文章主要為大家詳細(xì)介紹了VUE多個(gè)下拉框?qū)崿F(xiàn)雙向聯(lián)動(dòng)效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-07-07preload對(duì)比prefetch的功能區(qū)別詳解
這篇文章主要為大家介紹了preload對(duì)比prefetch的使用區(qū)別詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-06-06解決在Vue中使用axios POST請(qǐng)求變成OPTIONS的問題
這篇文章主要介紹了解決在Vue中使用axios POST請(qǐng)求變成OPTIONS的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-08-08