【Vue2.0学习】—插槽(六十四)

简介: 【Vue2.0学习】—插槽(六十四)


  • 作用:让父组件可以向子组件指定的位置插入html结构,也是一种组件间通信的方式,适用于 父组件=》子组件
  • 分类:默认插槽、具名插槽、作用域插槽

默认插槽

使用方式:

具名插槽

作用域插槽

理解:数据在组件的自身,但根据数据生成的结构需要组件的使用者来决定。(games数据在Category组件中,但使用数据所遍历出来的结构由APP组件决定)

作用域插槽案例:

App.vue

<template>
    <div class="app">
        <Category title="游戏">
            <template scope="play">
                <ul>
                    <li v-for="(g,index) in play.games" :key="index">{{g}}</li>
                </ul>
            </template>
        </Category>
        <Category title="游戏">
            <template scope="{games}">
                <ol>
                    <li style="color:red" v-for="(g,index) in games" :key="index">{{g}}</li>
                </ol>
            </template>
        </Category>
        <Category title="游戏">
            <template slot-scope="{games}">
                <h4 v-for="(g,index) in games" :key="index">{{g}}</h4>
            </template>
        </Category>
    </div>
</template>
<script>
    import Category from './components/Category.vue'
    export default {
        name: 'App',
        components: {
            Category
        }
    }
</script>
<style>
    .app,
    .foot {
        display: flex;
        justify-content: space-around;
    }
    .app img {
        width: 200px;
        height: auto;
    }
    .fff a {
        margin-left: 30px;
    }
    .fff h4 {
        text-align: center;
    }
</style>

Category.vue

<template>
    <div class="container">
        <h3>{{title}}分类</h3>
        <slot :games="games">我是默认类容</slot>
        <slot>
        </slot>
    </div>
</template>
<script>
    export default {
        name: 'Cateory',
        props: ['title'],
        data() {
            return {
                games: ['海绵宝宝', '宝宝巴士', '找你妹', 'LOL']
            }
        }
    }
</script>
<style>
    .container {
        background-color: skyblue;
        width: 200px;
        height: 300px;
    }
    h3 {
        text-align: center;
        background-color: orange;
    }
</style>


相关文章
|
6月前
|
JavaScript 前端开发
【面试题】vue中的插槽是什么?
【面试题】vue中的插槽是什么?
|
3月前
|
前端开发 JavaScript API
前端框架Vue------>第二天学习(1)插槽
这篇文章介绍了Vue框架中插槽(slot)的概念和用法,以及如何在组件中使用自定义事件进行父子组件间的通信。
前端框架Vue------>第二天学习(1)插槽
|
6月前
|
JavaScript 开发者
vue3中插槽的使用与用处
vue3中插槽的使用与用处
113 0
|
JavaScript
Vue 综合- 插槽
Vue 综合- 插槽
53 0
|
JavaScript
Vue框架插槽(第八课)
Vue框架插槽(第八课)
52 0
|
6月前
|
JavaScript
【Vue2.0学习】—组件(五十一)
【Vue2.0学习】—组件(五十一)
【Vue2.0学习】—组件(五十一)
|
JavaScript
Vue2向Vue3过度核心技术插槽1
Vue2向Vue3过度核心技术插槽1
64 0
|
C++
Vue2向Vue3过度核心技术插槽2
Vue2向Vue3过度核心技术插槽2
52 0
|
JavaScript API
【Vue3 第十九章】插槽 slot
【Vue3 第十九章】插槽 slot
165 0
|
前端开发
前端学习笔记202304学习笔记第十五天-vue3.0-具名插槽
前端学习笔记202304学习笔记第十五天-vue3.0-具名插槽
55 0