Vue初學21 slot 插槽 的基本使用

2021-10-05 06:22:39 字數 842 閱讀 7906

在使用元件時,經常會用到一些相似的元件,這些元件有很多共性,但又不完全相同。如果將這些元件都封裝成不同的元件,會出現很多重複的**,難免浪費資源。

為了提高元件的復用性和可移植性,元件中如果有些地方可以讓使用者來決定放什麼東西,那元件的使用就變得非常靈活。slot正是為了解決這個問題。

slot作為標籤使用,在需要使用者動態設定的地方,用slot標籤代替。使用者在使用標籤時,用相應的標籤代替slot標籤。如下所示:

在相應的位置加入標籤,slot標籤具體替換為什麼標籤由使用者在使用時,在元件內部指定。

我是slot的button標籤

在使用元件時,分別用p標籤和button標籤替換slot,效果如下:

如果在使用元件時,發現某乙個標籤比較常用,可以給slot設定預設值,這樣就不用每次都寫替換slot的標籤,預設就有乙個標籤。比如,設定button為slot預設標籤:

我是slot的button標籤

按鈕

效果如下:後面兩個元件沒有給slot設定替換標籤,顯示預設值。

如果在給slot設定替換標籤時設定了多個標籤,多個標籤會一起替換掉slot。不是一對一的替換。如下:

在元件中給slot設定三個標籤,,,

我是slot的button標籤

我是p標籤

我是span標籤

我是button標籤

按鈕

效果如下:

Vue初學 插槽slot

匿名插槽 我們使用slot標籤在元件中定義插槽,當我們在呼叫元件的標籤內寫入內容的時候,這段內容會替換匿名的插槽,slot標籤相當於乙個佔位符。1.當插槽標籤中有內容,而且元件標籤內未插入任何資料時,頁面會顯示插槽標籤內的內容,相當於是插槽的預設值。但是如果元件標籤內插入了任意資料,頁面則會顯示元件...

vue插槽樣式 vue中的插槽slot

插槽 slot 是元件的一塊html模板,父元件決定這塊模板顯不顯示以及怎麼顯示。位置由子元件自身決定 slot現在元件template的什麼位置,父元件傳過來的模板將來就顯示在什麼位置 匿名插槽 只能有乙個,可以放在元件的任何位置 在父元件在裡面寫了html模組 子元件的匿名插槽被下面的div模板...

Vue插槽slot的使用

vue官方文件中關於slot插槽的說明很簡短,語言又寫的很凝練,這就有可能造成初次接觸插槽的開發者容易產生 算了吧,回頭再學,反正已經可以寫基礎元件了 的想法,於是就關閉了vue的說明文件。q 假如父元件需要在子元件內放一些dom元素,那麼這些dom是顯示呢還是不顯示呢?預設情況下是不會顯示的,如下...