Vue作用域插槽

<body>
    <div id='root'>
        <child>
            <!-- 父组件调用子组件的时候,给子组件传了一个插槽 这个插槽叫作用域插槽 
                    作用域插槽必须以 template开头和结尾
                同时这个插槽要声明 你要从子组件接收的数据都放在哪   这里是放在props里面了
                    还要告诉子组件模板的信息 即接收的props怎么展示数据 -->
            <template slot-scope="props">
                <!-- <li>{{props.item}} -- Tony</li> -->

                <h4>{{props.item}} -- Tony</h4>

            </template>
        </child>
    </div>

    <script>
       
        Vue.component('child',{
            data:function(){
                return {
                    list:[1,2,3,4]
                }
            },
            /*child组件做一个列表的循环,但列表中的每一项怎么显示由外部告知
            *子组件用slot时会往slot里面传一个item数据,然后上面的<child>就会用这个item
            item 就放在了slot-scope="props"中
            */
            template:`
                    <div>
                        <ul>
                            <slot
                                v-for="item of list"
                                :item=item>
                                
                            </slot>
                        </ul>
                    </div>
            `
        });

        /*
        当子组件里面做循环 或者他的某一部分dom zone 应该由外部传递过来时 使用作用域插槽
        使用作用域插槽 子组件可以向父组件的插槽里面传数据(如:上面的item)
        */
        var vm =new Vue({
            el:'#root' 
              
        })
    </script>


</body>

在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值