zoukankan      html  css  js  c++  java
  • Vue学习笔记-作用域插槽

    有时候我们希望子组件的内容由父组件决定如何展示,这个时候子组件的数据父组件并不能访问到,而作用域插槽的关键之处就在于,父组件能接收来自子组件的slot传递过来的参数。

    <div id="app">
        <cpn></cpn>
        <cpn>
            <!--目的是获取子组件的数据并且按照父组件想要的形式展示-->
            <!--为了拿到slot传过来的data,必须用template-->
            <template slot-scope="slot">
                <!--<span v-for="item in slot.data">{{item}}-</span>-->
                <span>{{slot.data.join(' - ')}}-</span>
            </template>
        </cpn>
    
    </div>
    
    <template id="cpn">
        <div style="display: flex;flex-direction: row">
            <slot :data="planguage">
                <ul>
                    <li v-for="item in planguage">{{item}}</li>
                </ul>
            </slot>
    
        </div>
    
    </template>
    
    </body>
    <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
    <script>
        const cpn = {
            template: '#cpn',
            data () {
                return {
                    planguage: ['1111', '2222', '3333',' 4444']
                }
            }
        }
        const app = new Vue({
            el: '#app',
            components: {
                cpn
            }
        })
    </script>
    在父组件使用我们的子组件时,从子组件中拿到数据:
    我们通过<template slot-scope="slot">获取到slot属性
    在通过slot.data就可以获取到刚才我们传入的data了
    不积跬步无以至千里
  • 相关阅读:
    MapReduce运行原理和过程
    为什么均方差(MSE)不适合分类问题?交叉熵(cross-entropy)不适合回归问题?
    207. 课程表
    131. 分割回文串
    152. 乘积最大子数组
    pandas内存优化函数
    395. 至少有K个重复字符的最长子串
    HTML入门
    递归与链表
    Spring--001
  • 原文地址:https://www.cnblogs.com/lyt0207/p/11907183.html
Copyright © 2011-2022 走看看