摘要:而事實上這個的組件功能邏輯完全和一樣,只是多了一項年齡信息。這也是插槽最基本的用法。匿名插槽和具名插槽除非子組件模板包含至少一個插口,否則父組件的內(nèi)容將會被丟棄??梢酝ㄟ^為插槽指定具名插槽來指定渲染一個組件中多個插槽中的某一個。
使用插槽分發(fā)內(nèi)容
在封裝vue組件的時候,很多時候就不得不使用到vue的一個內(nèi)置組件
假設(shè)現(xiàn)在有一個people組件,結(jié)構(gòu)如下:
*填寫的內(nèi)容必須真實姓名 性別
當(dāng)我們注冊這個組件之后,就可以在其他組件中這樣子使用
用戶信息
我們都很清楚上面的代碼最后渲染的樣子。
用戶信息
*填寫的內(nèi)容必須真實姓名 性別
一般來說我們這樣子封裝
我們改變一下的封裝方式:
*填寫的內(nèi)容必須真實如果調(diào)用我的組件沒有傳入內(nèi)容,那么就渲染 里面的內(nèi)容。
我們在需要由父組件來渲染的部分使用插槽,相當(dāng)于占位。這樣我們就可以在調(diào)用的時候,再指定這個 組件里面有什么內(nèi)容:
渲染之后是:用戶信息
姓名 性別 用戶信息
*填寫的內(nèi)容必須真實姓名 性別
這樣子我們的
除非子組件模板包含至少一個
可以通過為
作用域插槽調(diào)用渲染的結(jié)果: slot1的內(nèi)容slot2的內(nèi)容slot1的內(nèi)容slot2的內(nèi)容
這種特殊的插槽可以暴露子組件中的內(nèi)容,把數(shù)據(jù)交由父組件來渲染。看下面的例子:
子組件的模板 父組件中調(diào)用: 渲染的結(jié)果為:{{props.tip}}
子組件內(nèi)部的tip
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/92490.html
實踐是所有展示最好的方法,因此我覺得可以不必十分細(xì)致的,但我們的展示卻是整體的流程、輸入和輸出。現(xiàn)在我們就看看Vue 的指令、內(nèi)置組件等。也就是第二篇,模型樹優(yōu)化?! 》治隽?Vue 編譯三部曲的第一步,「如何將 template 編譯成 AST ?」上一篇已經(jīng)介紹,但我們還是來總結(jié)回顧下,parse 的目的是將開發(fā)者寫的 template 模板字符串轉(zhuǎn)換成抽象語法樹 AST ,AST 就這里...
我們時常會想在保持第三方組件原有功能(屬性props、事件events、插槽slots、方法methods)的基礎(chǔ)上,這些功能如何優(yōu)化的實現(xiàn)? 以Element Plus的el-input為例: 在封裝一個MyInput組件,把要使用的屬性props、事件events和插槽slots、方法methods先要依照自己的需求來編寫: //MyInput.vue <template&...
之前我們講過template轉(zhuǎn)成AST(抽象語法樹),現(xiàn)在我就繼續(xù)對模型樹優(yōu)化,進(jìn)行靜態(tài)標(biāo)注。這要如何實現(xiàn)? 在源碼的注釋中我們找到了下面這段話: /** * Goal of the optimizer: walk the generated template AST tree * and detect sub-trees that are purely static, i.e. part...
項目中element的表格,每次都cv很麻煩,可以用表格進(jìn)行了二次封裝,寫一個Table組件?! ∈紫?,下面是表格樣式 <el-table :data="tableData" :header-cell-style="headerStyle" :height="height" :border="bord...
本文關(guān)鍵闡述了python中的特性管理模式,主要包含私有屬性和特性局限-__slots__方式,原文中闡述了python中怎樣去聲明變量的基本知識,必須的小伙伴可以借鑒一下 一、私有屬性 Python并沒真正意義上的民營化適用,但可以用下橫線獲得偽私,其中一項大部分Python編碼都遵照的好習(xí)慣:含有下橫線,作為前綴的名字應(yīng)被稱作非公開的API中的一部分(不論是函數(shù)公式、方式或是數(shù)據(jù)成員)...
閱讀 3115·2021-10-13 09:40
閱讀 3971·2021-09-22 15:51
閱讀 1512·2021-09-22 15:48
閱讀 1081·2021-09-06 15:00
閱讀 1806·2019-08-30 15:43
閱讀 2372·2019-08-29 18:35
閱讀 1684·2019-08-29 16:18
閱讀 3630·2019-08-29 12:49