欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

前端架構vue架構插槽slot使用教程

 更新時間:2022年02月19日 16:59:23   作者:悟世君子  
這篇文章主要為大家介紹了前端vue架構插槽slot使用教程示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

1、直接使用

新建組件 Article

<template>
    <div>
        日期:2022-01-15
        <slot></slot>
    </div>
</template>

新建 Learn,并在 Learn 中使用 Article

Learn.vue 和 Article.vue 在同一文件夾下

<template>
    <div>
        <Article>
            <div>送郎八月到揚州,長夜孤眠在畫樓。女子拆開不成好,秋心合著卻成愁</div>
        </Article>
    </div>
</template>
<script>
import Article from './Article.vue'
export default {
    components: {Article}
}
</script>

slot 相當于把 div 插入到 Article 中 slot 位置

運行效果

2、設置默認值

即使用 slot 時,不傳入會顯示默認的內容,傳入則使用傳入的內容

如不設置默認值,則不顯示任何內容,代碼如下

先看不設置默認值的情況

Article 內容

<template>
    <div>
        日期:2022-01-15
        <slot></slot>
    </div>
</template>

Learn 內容

<template>
    <div>
        <Article>
        </Article>
    </div>
</template>
<script>
import Article from './Article.vue'
export default {
    components: {Article}
}
</script>

運行效果

設置默認值

Article 內容

<template>
    <div>
        日期:2022-01-15
        <slot>
            <div>醉眠芳樹下,半被落花埋</div>
        </slot>
    </div>
</template>

Learn 內容

<template>
    <div>
        <Article>
        </Article>
    </div>
</template>
<script>
import Article from './Article.vue'
export default {
    components: {Article}
}
</script>

運行效果

3、多個 slot 用法

 Article 內容

<template>
    <div>
        <slot name="title"></slot>
        日期:2022-01-15
        <slot name="content"></slot>
    </div>
</template>

Learn 內容

<template>
    <div>
        <Article>
            <template v-slot:title>
                <div>窗前 【作者】趙崇嶓 </div>
            </template>    
            <template v-slot:content>
                <div>
                    窗前尋丈地,種得一株梅。
                    明月清風我,紅塵不復來。
                </div>
            </template>
            
        </Article>
    </div>
</template>
<script>
import Article from './Article.vue'
export default {
    components: {Article}
}
</script>

通過給 slot 標簽設置 name 屬性值,并通過 v-slot 來對應

運行效果

v-slot:title 可以簡寫為 #title,代碼如下

<template>
    <div>
        <Article>
            <template #title>
                <div>窗前 【作者】趙崇嶓 </div>
            </template>    
            <template #content>
                <div>
                    窗前尋丈地,種得一株梅。
                    明月清風我,紅塵不復來。
                </div>
            </template>
            
        </Article>
    </div>
</template>
<script>
import Article from './Article.vue'
export default {
    components: {Article}
}
</script>

4、作用域插槽

父級插槽使用子組件中的數據

Article 內容

<template>
    <div>
        日期:2022-01-15
        <slot v-bind:article="article">
            <div>{{article.content1}}</div>
        </slot>
    </div>
</template>
<script>
export default {
    data() {
        return {
            article: {
                content1: '從別后,憶相逢。幾回魂夢與君同',
                content2: '今宵剩把銀釭照,猶恐相逢是夢中'  
            }
        }
    }
}
</script>

Learn 內容

<template>
    <div>
        <Article>
        </Article>
        
        <Article>
            <template v-slot:default="slotProps">
                {{ slotProps.article.content2 }}
            </template>
        </Article>
    </div>
</template>
<script>
import Article from './Article.vue'
export default {
    components: {Article}
}
</script>

運行效果

看上下2個 Article 顯示的區(qū)別,上邊顯示的是 content1,下邊顯示的是 content2

上面代碼 v-slot:default="slotProps" 可以簡寫成 v-slot="slotProps"

簡寫后的代碼

<template>
    <div>
        <Article>
        </Article>
 
        <Article>
            <template v-slot="slotProps">
                {{ slotProps.article.content2 }}
            </template>
        </Article>
    </div>
</template>
<script>
import Article from './Article.vue'
export default {
    components: {Article}
}
</script>

解構插槽 Prop

在支持的環(huán)境下 (單文件組件或現代瀏覽器),可以使用 ES2015 解構傳入具體的插槽 prop

代碼如下

<template>
    <div>
        <Article>
        </Article>
 
        <Article>
            <template v-slot="{article}">
                {{ article.content2 }}
            </template>
        </Article>
    </div>
</template>
<script>
import Article from './Article.vue'
export default {
    components: {Article}
}
</script>

5、動態(tài)插槽名

Article 內容

<template>
    <div>
        <slot name="title"></slot>
        日期:2022-01-15
        <slot name="content"></slot>
    </div>
</template>

Learn 內容

<template>
    <div>
        <Article>
            <template v-slot:[dynamicSlotName]>
                <div>身無彩鳳雙飛翼,心有靈犀一點通</div>
            </template>
        </Article>
        <button @click="changeSlotName">改變插槽名</button>
    </div>
</template>
<script>
import Article from './Article.vue'
export default {
    components: {Article},
    data() {
        return {
            dynamicSlotName: 'title'
        }
    },
    methods: {
        changeSlotName() {
            this.dynamicSlotName = 'content'
        }
    }
}
</script>

運行效果

以上就是前端架構vue架構插槽slot使用教程的詳細內容,更多關于vue插槽slot教程的資料請關注腳本之家其它相關文章!

相關文章

  • 關于Pinia狀態(tài)管理解讀

    關于Pinia狀態(tài)管理解讀

    這篇文章主要介紹了Pinia狀態(tài)管理解讀,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • Vue中watch的多種使用方法小結

    Vue中watch的多種使用方法小結

    Vue的watch選項提供了多種方法來觀測數據屬性的變化,讓我們能夠編寫更加優(yōu)雅和維護性更高的代碼,本文給大家介紹Vue中watch的多種使用方法小結,感興趣的朋友一起看看吧
    2023-10-10
  • vue實現移動端可拖拽式icon圖標

    vue實現移動端可拖拽式icon圖標

    這篇文章主要為大家詳細介紹了vue實現移動端可拖拽式icon圖標,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • vue3實現父組件提交校驗多個子組件

    vue3實現父組件提交校驗多個子組件

    這篇文章主要為大家詳細介紹了vue3如何實現父組件在提交事件中校驗多個子組件中的form件,文中的示例代碼講解詳細,有需要的小伙伴可以參考一下
    2023-11-11
  • vue左右側聯(lián)動滾動的實現代碼

    vue左右側聯(lián)動滾動的實現代碼

    這篇文章主要介紹了vue左右側聯(lián)動滾動的實現代碼,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-06-06
  • vue-router配合ElementUI實現導航的實例

    vue-router配合ElementUI實現導航的實例

    下面小編就為大家分享一篇vue-router配合ElementUI實現導航的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-02-02
  • Element Breadcrumb 面包屑的使用方法

    Element Breadcrumb 面包屑的使用方法

    這篇文章主要介紹了Element Breadcrumb 面包屑的使用方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-07-07
  • vue實現flv格式視頻播放效果

    vue實現flv格式視頻播放效果

    這篇文章主要介紹了vue實現flv格式視頻播放,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-07-07
  • Vue中使用addEventListener添加事件、removeEventListener移除事件的示例詳解

    Vue中使用addEventListener添加事件、removeEventListener移除事件的示例詳解

    最近在項目中需要用到addEventListener監(jiān)聽滾動條滾動的高度,所以就研究了一下在vue中是怎么進行事件監(jiān)聽的,添加事件和移除事件結合示例代碼給大家介紹的非常詳細,需要的朋友參考下吧
    2022-12-12
  • vue3更新的setup語法糖實例詳解

    vue3更新的setup語法糖實例詳解

    vue3上線已經很久了,許多小伙伴應該都已經使用過vue3了,下面這篇文章主要給大家介紹了關于vue3更新的setup語法糖的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-04-04

最新評論