作用域插槽的使用(四个作用域的区别)

什么是作用域插槽?其实就是带数据的插槽。父组件可以通过绑定数据传递给子组件,而作用域插槽可以通过子组件绑定数据传递给父组件。作用域的使用场景:既可以复用子组件的slot,又可以使slot内容不一致!代码如下:<divid=”app”><div><emp-list:emps=”empList”><templateslot=”emp”slot-scop..

大家好,又见面了,我是你们的朋友全栈君。

  • 什么是作用域插槽?
    其实就是带数据的插槽
    父组件可以通过绑定数据传递给子组件,而作用域插槽可以通过子组件绑定数据传递给父组件。

  • 作用域的使用场景
    既可以复用子组件的slot,又可以使slot内容不一致!

  • 代码如下:

 <div id="app">
        <div>
            <emp-list :emps="empList">
                <!-- 
                    【 slot-scope 】:主要目的是跟 empName 相联系 
                    【 props 】:作用域插槽
                -->
                <template slot="emp" slot-scope="props">
                    <li>
                        { 
   { 
   props.empname}}
                    </li>
                </template>       
            </emp-list>
        </div>
    </div>

    <template id="empComp">
        <div>
            <h1>列表排布</h1>
            <ul>
                <!--:empName="emp.name" 】:作用域插槽的属性 -->
                <slot name="emp" v-for="emp in emps" :empName="emp.name"></slot>
            </ul>
        </div>
    </template>   

    <!-- 借助免费的CDN来引入vue.js文件 -->
    <script src="https://cdn.bootcss.com/vue/2.6.10/vue.min.js"></script>
    <script>
        //局部注册
        var vm=new Vue({ 
   
            el:"#app",
            data:{ 
   
                empList:[{ 
   
                    name:"苹果"
                },{ 
   
                    name:"西瓜"
                },{ 
   
                    name:"芒果"
                }]
            },
            components:{ 
   
                "emp-list":{ 
   
                    props:["emps"],
                    template:"#empComp"  //作为一个id
                }
            }
        });
    </script>
  • 效果图如下:
    在这里插入图片描述
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/129125.html原文链接:https://javaforall.net

(0)
上一篇 2022年4月15日 下午12:40
下一篇 2022年4月15日 下午12:40


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号