• 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了
    不积跬步无以至千里
  • 相关阅读:
    Linux 实战
    bash 环境配置及脚本
    Linux vi/vim
    Linux 正则表达式
    001 KNN分类 最邻近算法
    测序名解
    流式细胞术
    CircRNA 环化RNA
    笔记总结
    Flume
  • 原文地址:https://www.cnblogs.com/lyt0207/p/11907183.html
Copyright © 2020-2023  润新知