最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Vue中插槽slot的使用方法

 更新時(shí)間:2023年03月25日 08:42:27   作者:大熊李子  
插槽就是子組件中的提供給父組件使用的一個(gè)占位符,用<slot></slot> 表示,父組件可以在這個(gè)占位符中填充任何模板代碼,如 HTML、組件等,填充的內(nèi)容會(huì)替換子組件的<slot></slot>標(biāo)簽,這篇文章主要介紹了Vue插槽的理解和使用,需要的朋友可以參考下

1.什么是插槽

插槽(slot)是 vue 為組件的封裝者提供的能力。允許開發(fā)者在封裝組件時(shí),把不確定的、希望由用戶 指定的部分定義為插槽。

2.插槽的使用

在封裝組件時(shí),可以通過 元素定義插槽,從而為用戶預(yù)留內(nèi)容占位符。

// 子組件
<template>
<div class="left-container">
<h3>Left 組件</h3>
<hr />
<p>子組件的第一個(gè) p 標(biāo)簽</p>
<!-- 通過 slot 標(biāo)簽,為用戶預(yù)留內(nèi)容占位符(插槽) -->
<slot></slot>
<p>子組件最后一個(gè) p 標(biāo)簽</p>
</div>
</template>
// 父組件
<template>
<div class="app-container">
<h1>App 根組件</h1>
<hr />
<div class="box">
<!-- 渲染 Left 組件和 Right 組件 -->
<!-- 在使用組件時(shí),為插槽指定具體的內(nèi)容 -->
<Left>
<p>用戶自定義內(nèi)容</p>
</Left>
</div>
</div>
</template>

3.v-slot指令

vue 官方規(guī)定:每一個(gè) slot 插槽,都要有一個(gè) name 名稱,如果省略了 slot 的 name 屬性,則有一個(gè) 默認(rèn)名稱叫做 default。 默認(rèn)情況下,在使用組件的時(shí)候,提供的內(nèi)容都會(huì)被填充到名字為default 的插槽之中如果要把內(nèi)容填充到指定名稱的插槽中,需要使用 v-slot: 這個(gè)指令, v-slot: 指令后面要跟插槽的名字。

// 父組件
<Left>
<template v-slot:default>
<p>用戶自定義內(nèi)容</p>
</template>
</Left>
// 子組件
<template>
<div class="left-container">
<h3>Left 組件</h3>
<hr />
<p>子組件的第一個(gè) p 標(biāo)簽</p>
<!-- 通過 slot 標(biāo)簽,為用戶預(yù)留內(nèi)容占位符(插槽) -->
<slot name="default"></slot>
<p>子組件最后一個(gè) p 標(biāo)簽</p>
</div>
</template>

v-slot:指令不能直接用在元素身上,必須用在template 標(biāo)簽上 template這個(gè)標(biāo)簽,它是一個(gè)虛擬的標(biāo)簽,只起到包裹性質(zhì)的作用,但是,不會(huì)被渲染為任何實(shí) 質(zhì)性的html元素

注:沒有預(yù)留插槽的內(nèi)容會(huì)被丟棄,如果在封裝組件時(shí)沒有預(yù)留任何 插槽,則用戶提供的任何自定義內(nèi)容都會(huì)被丟棄。

// 子組件
<template>
<div class="left-container">
<h3>Left 組件</h3>
<hr />
<p>子組件的第一個(gè) p 標(biāo)簽</p>
<!-- 封裝組件時(shí),沒有預(yù)留任何插槽 -->
<p>子組件最后一個(gè) p 標(biāo)簽</p>
</div>
</template>
// 父組件
<template>
<div class="app-container">
<h1>App 根組件</h1>
<hr />
<div class="box">
<!-- 自定義的內(nèi)容會(huì)被丟棄 -->
<Left>
<p>用戶自定義內(nèi)容</p>
</Left>
</div>
</div>
</template>

4.具名插槽

如果在封裝組件時(shí)需要預(yù)留多個(gè)插槽節(jié)點(diǎn),則需要為每個(gè) 插槽指定具體的 name 名稱。這種帶 有具體名稱的插槽叫做“具名插槽”。

<template>
<div class="article-container">
<!-- 文章標(biāo)題 -->
<div class="header-box">
<slot name="title"></slot>
</div>
<!-- 文章內(nèi)容 -->
<div class="content-box">
<slot name="content"></slot>
</div>
<!-- 文章作者 -->
<div class="footer-box">
<slot name="author"></slot>
</div>
</div>
</template>

在向具名插槽提供內(nèi)容的時(shí)候,我們可以在一個(gè) 元素上使用 v-slot 指令,并以 v-slot 的參 數(shù)的形式提供其名稱

// 父組件中
<Article>
<template #title>
<h3>靜夜思</h3>
</template>
<template #content>
<div>
<p>我見青山多嫵媚,</p>
<p>料青山見我應(yīng)如是。</p>
</div>
</template>
<template #author>
<div>作者:大熊</div>
</template>
</Article>

5.具名插槽的簡寫形式

<tbody>
<!-- 下面的slot 是一個(gè)作用域插槽-->
<slot v-for="item in 1 ist" :user="item"></slot>
</tbody>

6.作用域插槽

可以使用 v-slot: 的形式,接收作用域插槽對外提供的數(shù)據(jù)

<my-com-3>
<!-- 1.接收作用域插槽對外提供的數(shù)據(jù)-->
<template v-slot:default=" scope">
<tr>
<!-- 2.使用作用域插槽的數(shù)據(jù)-->
<td> {{ scope }}</td>
</tr>
</ template>
</my-com-3>

7.解構(gòu)插槽 Prop

作用域插槽對外提供的數(shù)據(jù)對象,可以使用解構(gòu)賦值簡化數(shù)據(jù)的接收過程

<myone>
<!-- v-slot: 可以簡寫成# -->
<!-- 作用域插槽對外提供的數(shù)據(jù)對象,可以通過”解構(gòu)賦值"簡化接收的過程-->
<template #default="{user}">
<tr>
<td> {{user.id}}</td>
<td> {{user.name}}</td>
<td> {{user.state}}</td>
</tr>
</ template>
</myone>

到此這篇關(guān)于Vue中插槽slot的使用方法的文章就介紹到這了,更多相關(guān)Vue插槽slot內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • antd form表單數(shù)據(jù)回顯操作

    antd form表單數(shù)據(jù)回顯操作

    這篇文章主要介紹了antd form表單數(shù)據(jù)回顯操作,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • Vue3集成Element-plus快速搭建頁面框架的過程

    Vue3集成Element-plus快速搭建頁面框架的過程

    ElementPlus是一款基于Vue3的UI組件庫,提供了豐富的組件和響應(yīng)式設(shè)計(jì),易于使用和主題定制,在Vue3項(xiàng)目中集成ElementPlus,需要通過npm安裝并引入組件,主題色可以通過修改樣式文件進(jìn)行全局設(shè)置,本文介紹Vue3集成Element-plus快速搭建頁面框架,感興趣的朋友一起看看吧
    2025-03-03
  • vue實(shí)現(xiàn)頁面刷新動(dòng)畫

    vue實(shí)現(xiàn)頁面刷新動(dòng)畫

    這篇文章主要為大家詳細(xì)介紹了vue實(shí)現(xiàn)頁面刷新動(dòng)畫,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • vue-router+vuex addRoutes實(shí)現(xiàn)路由動(dòng)態(tài)加載及菜單動(dòng)態(tài)加載

    vue-router+vuex addRoutes實(shí)現(xiàn)路由動(dòng)態(tài)加載及菜單動(dòng)態(tài)加載

    本篇文章主要介紹了vue-router+vuex addRoutes實(shí)現(xiàn)路由動(dòng)態(tài)加載及菜單動(dòng)態(tài)加載,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-09-09
  • vue項(xiàng)目純前端實(shí)現(xiàn)的模板打印功能示例代碼

    vue項(xiàng)目純前端實(shí)現(xiàn)的模板打印功能示例代碼

    在Vue項(xiàng)目中,通過使用vue-print-nb插件,可以實(shí)現(xiàn)頁面的打印功能,這篇文章主要介紹了vue項(xiàng)目純前端實(shí)現(xiàn)的模板打印功能的相關(guān)資料,需要的朋友可以參考下
    2024-10-10
  • vue package.json文件的使用及說明

    vue package.json文件的使用及說明

    `package.json`是Node.js和npm項(xiàng)目的核心配置文件,定義了項(xiàng)目的元數(shù)據(jù)和依賴項(xiàng),在Vue項(xiàng)目中,它管理依賴、提供腳本命令、存儲(chǔ)項(xiàng)目信息,并通過語義化版本控制確保項(xiàng)目穩(wěn)定
    2025-01-01
  • Vue項(xiàng)目中使用Bootstrap

    Vue項(xiàng)目中使用Bootstrap

    這篇文章介紹了Vue項(xiàng)目中使用Bootstrap的方法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-03-03
  • 使用vue-cli腳手架工具搭建vue-webpack項(xiàng)目

    使用vue-cli腳手架工具搭建vue-webpack項(xiàng)目

    這篇文章主要介紹了使用vue-cli腳手架工具搭建vue-webpack項(xiàng)目,通過幾個(gè)默認(rèn)的步驟幫助你快速的構(gòu)建Vue.js項(xiàng)目。非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2019-01-01
  • 快速搭建vue2.0+boostrap項(xiàng)目的方法

    快速搭建vue2.0+boostrap項(xiàng)目的方法

    這篇文章主要介紹了快速搭建vue2.0+boostrap項(xiàng)目的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-04-04
  • 前端vue項(xiàng)目如何使用Decimal.js做加減乘除求余運(yùn)算

    前端vue項(xiàng)目如何使用Decimal.js做加減乘除求余運(yùn)算

    decimal.js是使用的二進(jìn)制來計(jì)算的,可以更好地實(shí)現(xiàn)格化式數(shù)學(xué)運(yùn)算,對數(shù)字進(jìn)行高精度處理,使用decimal類型處理數(shù)據(jù)可以保證數(shù)據(jù)計(jì)算更為精確,這篇文章主要給大家介紹了關(guān)于前端vue項(xiàng)目如何使用Decimal.js做加減乘除求余運(yùn)算的相關(guān)資料,需要的朋友可以參考下
    2024-05-05

最新評論

台东市| 呼图壁县| 邢台县| 司法| 增城市| 沁水县| 汤原县| 庆安县| 宜川县| 农安县| 河源市| 屏边| 兖州市| 科尔| 台南县| 乐平市| 益阳市| 泸水县| 且末县| 秦皇岛市| 贵溪市| 新化县| 德阳市| 陕西省| 噶尔县| 庄浪县| 余庆县| 祥云县| 弥勒县| 通化市| 旺苍县| 定襄县| 富顺县| 恩施市| 象山县| 阿拉善盟| 辽宁省| 白城市| 千阳县| 乐业县| 合肥市|