本篇內(nèi)容介紹了“怎么用Vue命名插槽創(chuàng)建多個(gè)模板插槽”的有關(guān)知識(shí),在實(shí)際案例的操作過(guò)程中,不少人都會(huì)遇到這樣的困境,接下來(lái)就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
成都創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供馬邊彝族網(wǎng)站建設(shè)、馬邊彝族做網(wǎng)站、馬邊彝族網(wǎng)站設(shè)計(jì)、馬邊彝族網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)與制作、馬邊彝族企業(yè)網(wǎng)站模板建站服務(wù),十多年馬邊彝族做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。
Vue 插槽允許將父組件中的內(nèi)容注入到子組件中。
這是最基本的示例,如果我們不提供父級(jí)的任何slot 內(nèi)容,則我們將放在其中的任何內(nèi)容都會(huì)作為后備內(nèi)容。
// ChildComponent.vue后備內(nèi)容
你組件代碼:
// ParentComponent.vue替換 slot 的默認(rèn)內(nèi)容
編譯后,我們的 DOM 將如下所示
替換 slot 的默認(rèn)內(nèi)容
我們還可以將父組作用域內(nèi)的任何數(shù)據(jù)寫在 slot 區(qū)域中。例如,父組件有一個(gè)名為title的數(shù)據(jù)字段,我們可以使用以下代碼將其注入到子組件中:
// ParentComponent.vue{{ title }}
為什么我們需要命名插槽
在Vue中使用命名插槽有兩個(gè)步驟:
使用name屬性從子組件中命名 slot
使用v-slot指令從父組件向這些命名插槽提供內(nèi)容
默認(rèn)情況下,不給插槽顯式的name屬性時(shí),它有默認(rèn)名字是default。
為了給我們的 slot 起個(gè)名字,元素具有一個(gè)特殊的name屬性,可以讓我們?cè)诙鄠€(gè)插槽之間進(jìn)行區(qū)分。
在下面的Article.vue 中,我們命名三個(gè) slot
// Article.vue - Child Component默認(rèn) title 默認(rèn) content 默認(rèn) comments
然后,在父組件中,我們可以在元素上使用v-slot指令指定我們想要注入內(nèi)容的slot。
// ParentComponent.vue我的 Title 我的 Content 我的 Comments
因?yàn)檫@是沒有指定 slot 的名稱,所以顯示的是 slot 默認(rèn)的內(nèi)容。
要解決這個(gè)問(wèn)題,可以使用v-slot,指定的名稱要確保名稱與我們?cè)谧咏M件中聲明的名稱完全匹配。
我的 title 我的 content 我的 comments
再次運(yùn)行:
使用 Vue 命名插槽有什么意義
命名槽讓我們可以使用多個(gè)槽,但是為什么這對(duì)我們Vue開發(fā)人員有用呢。
簡(jiǎn)而言之,它使我們可以更好地組織開發(fā)代碼,還可以編寫更具擴(kuò)展性的代碼。
就個(gè)人而言,我認(rèn)為最重要的是,它允許我們?cè)诖a上使用插槽,從而使樣式設(shè)計(jì)變得更加容易。在我們的示例中,Article.vue子組件只有三個(gè)插槽,但是在實(shí)際應(yīng)用中,這些插槽看起來(lái)更像這樣,以便我們的組件可以向每個(gè)部分添加CSS樣式。
默認(rèn) Title
默認(rèn) Content 默認(rèn) Comments
在此示例中,更容易理解為什么我們需要多個(gè) slot。由于我們注入的內(nèi)容是通過(guò)不同的
和DOM元素彼此分隔的。無(wú)法在一個(gè)slot中傳遞所有這些信息。
如果檢查DOM,可以看到使用v-slot的模板將內(nèi)容正確地插入到正確的位置。
“怎么用Vue命名插槽創(chuàng)建多個(gè)模板插槽”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!