vue作用域插槽

本文详细介绍了如何在Vue组件中,通过子组件的插槽(slot)将数据传递给父组件,并利用作用域插槽(scoped slot)接收和使用这些数据。通过实例展示了如何定义和使用`v-slot`来访问子组件的数据,适合前端开发者学习和实践组件间的通信。
摘要由CSDN通过智能技术生成

如何父组件使用子组件数据:
1:子组件通过<slot :user="user"> </slot>把数据传入插槽中
2:在父组件中<template v-slot:default="sprops"{{sprops.user.age}}</template> 把插槽中数据传入,并命名为sprops,然后就可以使用子组件数据了。

子组件

<template>
  <h1>
<!--:user="user" 就把子组件中数据传给了slot-->
    <slot :user="user">
    </slot>
  </h1>
</template>
<script>
export default {
  data() {
    return {
      user: {
        name:"wxy",
        age:20
      }
    }
  }
}
</script>
<style></style>

父组件

<template>
  <div>
<!--父组件中不传值,显示子组件内容,否则显示父组件中内容-->
<!--父组件中使用子组件数据(作用域插槽)-->
<!--子组件通过:user="user" 把数据传给了插槽,父组件v_slot=""对传来的数据命名,就可以使用子组件内容了-->
    <current-user>
      <template v-slot:default="sprops">
        {{sprops.user.age}}
      </template>
    </current-user>
  </div>
</template>
<script>
import CurrentUser from './CurrentUser';
export default {
  component:{
    CurrentUser
  }
}
</script>
<style></style>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值