vue學(xué)習(xí)筆記之slot插槽用法實例分析
本文實例講述了vue slot插槽用法。分享給大家供大家參考,具體如下:
不使用插槽,在template中用v-html解析父組件傳來的帶有標簽的content
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
</head>
<body>
<div id="app">
<child content="<p>Rachel</p>"></child>
</div>
</body>
</html>
<script>
Vue.component('child', {
props: ['content'],
template: '<div>
<p>hello</p>
<div v-html="this.content"></div>
</div>'
})
var vm = new Vue({
el: '#app'
})
</script>
使用插槽,如果父組件為空,就會顯示slot中定義的默認內(nèi)容
<child>
<p>Rachel</p>
</child>
Vue.component('child', {
template: '<div>
<p>hello</p>
<slot>默認內(nèi)容</slot>
</div>'
})
使用插槽添加header和footer,使用‘具名插槽',也就是給插槽起個名字,各找各的位置。此處也可以寫默認值,如果父組件沒有對應(yīng)的插槽內(nèi)容的話,會顯示子組件定義的插槽的默認值。
<div id="app">
<body-content>
<div class="header" slot="header">header</div>
<div class="footer" slot="footer">footer</div>
</body-content>
</div>
Vue.component('body-content', {
template: '<div>
<slot name="header">default header</slot>
<div class="content">content</div>
<slot name="footer">default footer</slot>
</div>'
})
感興趣的朋友可以使用在線HTML/CSS/JavaScript代碼運行工具:http://tools.jb51.net/code/HtmlJsRun測試上述代碼運行效果。
希望本文所述對大家vue.js程序設(shè)計有所幫助。
相關(guān)文章
Vue動態(tài)數(shù)據(jù)實現(xiàn)?el-select?多級聯(lián)動、數(shù)據(jù)回顯方式
這篇文章主要介紹了Vue動態(tài)數(shù)據(jù)實現(xiàn)?el-select?多級聯(lián)動、數(shù)據(jù)回顯方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-07-07
Vue中Video標簽播放解析后短視頻去水印無響應(yīng)解決
這篇文章主要為大家介紹了Vue中使用Video標簽播放?<解析后的短視頻>去水印視頻無響應(yīng)的解決方式,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-04-04
vue3 攜帶參數(shù)跳轉(zhuǎn)|router傳參方式
這篇文章主要介紹了vue3 攜帶參數(shù)跳轉(zhuǎn)|router傳參方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-06-06

