Vue匿名插槽與作用域插槽的合并和覆蓋行為
Vue 測試版本:Vue.js v2.5.13
Vue 文檔:
<slot> 元素可以用一個(gè)特殊的特性 name 來進(jìn)一步配置如何分發(fā)內(nèi)容。多個(gè)插槽可以有不同的名字。具名插槽將匹配內(nèi)容片段中有對(duì)應(yīng) slot 特性的元素。
仍然可以有一個(gè)匿名插槽,它是默認(rèn)插槽,作為找不到匹配的內(nèi)容片段的備用插槽。
具體應(yīng)用的時(shí)候:
1、匿名插槽的合并行為:
<div id="app">
<myele>
<div>
default slot
</div>
<div>
<div>from parent!</div>
<div>from parent!</div>
</div>
</myele>
</div>
window.onload = function() {
Vue.component('myele', {
template: `
<div>
<slot></slot>
</div>
`
});
new Vue({
el: '#app'
});
};
效果:內(nèi)容合并
2、匿名作用域插槽的覆蓋行為:
<div id="app">
<myele>
<div slot-scope="props">
<div>from parent!</div>
<div>from {{props.text}}</div>
</div>
<div slot-scope="prop">
<div>from </div>
<div>{{prop.text}}</div>
</div>
</myele>
</div>
window.onload = function() {
Vue.component('myele', {
template: `
<div>
<slot text="child"></slot>
<slot text="child2"></slot>
//即使 text 和上一行一樣,也不會(huì)報(bào)錯(cuò),開發(fā)環(huán)境 </div>
`
});
new Vue({
el: '#app'
});
};
效果:以靠后的作用域插槽模板為準(zhǔn),繪制了兩遍;
3、匿名插槽模板和作用域插槽模板混合:
<div id="app">
<myele>
<div>
default slot
</div>
<div slot-scope="props">
<div>from parent!</div>
<div>from {{props.text}}</div>
</div>
</myele>
</div>
window.onload = function() {
Vue.component('myele', {
template: `
<div>
<slot></slot>
<slot text="child"></slot>
</div>
`
});
new Vue({
el: '#app'
});
};
效果:匿名插槽以匿名作用域插槽模板為準(zhǔn)進(jìn)行渲染,即使你把匿名插槽模板放后面,也是一樣的結(jié)果;
由此可以看出,最好不要使用匿名、默認(rèn)插槽,最好使用具名插槽,可以減少不確定性;
參考文檔:
https://cn.vuejs.org/v2/guide/components.html#具名插槽
總結(jié)
以上所述是小編給大家介紹的Vue匿名插槽與作用域插槽的合并和覆蓋行為,希望對(duì)大家有所幫助,如果大家有任何疑問請給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
如果你覺得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!
相關(guān)文章
VUE3基于vite封裝條形碼和二維碼組件的詳細(xì)過程
基礎(chǔ)組件開發(fā)是項(xiàng)目業(yè)務(wù)開發(fā)的基石, 本文主要介紹了通過vue3的vite腳手架快速搭建項(xiàng)目, 開發(fā)條形碼和二維碼組件的過程,感興趣的朋友跟隨小編一起看看吧2023-08-08
一篇文章教你實(shí)現(xiàn)VUE多個(gè)DIV,button綁定回車事件
這篇文章主要介紹了VUE多個(gè)DIV綁定回車事件,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2021-10-10
Vue手動(dòng)埋點(diǎn)設(shè)計(jì)的方法實(shí)例
這篇文章主要給大家介紹了關(guān)于Vue手動(dòng)埋點(diǎn)設(shè)計(jì)的相關(guān)資料,內(nèi)容簡明扼要并且容易理解,絕對(duì)能使你眼前一亮,需要的朋友可以參考下2022-03-03
vue-cli3項(xiàng)目展示本地Markdown文件的方法
這篇文章主要介紹了vue-cli3項(xiàng)目展示本地Markdown文件的方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-06-06
Vue實(shí)現(xiàn)計(jì)算器計(jì)算效果
這篇文章主要為大家詳細(xì)介紹了Vue實(shí)現(xiàn)計(jì)算器計(jì)算效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-08-08




