插件窝 干货文章 vue3怎么获取插槽中的数据

vue3怎么获取插槽中的数据

插槽 slot template 数据 794    来源:    2024-10-21
在 vue 3 中,通过 slot 具名参数或 v-slot 范围插槽可以获取插槽数据。使用 slot 具名参数时,slot 数据通过 prop 传递;使用 v-slot 范围插槽时,slot 数据作为参数传递。

Vue 3 如何获取插槽中的数据

在 Vue 3 中,获取插槽中数据的常用方法是使用 slot 具名参数或 v-slot 范围插槽。

使用 slot 具名参数

<template v-slot:header><h1>插槽内容</h1>
</template>
const App = {
  template: `
    <component :header="slotData"><template v-slot:header><h1>默认插槽内容</h1>
      </template></component>
  `,
  data() {
    return {
      slotData: '插槽数据'
    }
  }
}

在父组件中,使用 :header 属性将插槽数据传递给子组件。子组件可以像访问其他 prop 一样访问插槽数据(this.header)。

立即学习“前端免费学习笔记(深入)”;

使用 v-slot 范围插槽

<component><template v-slot:header><h1>插槽内容:{{ slotContent }}</h1>
  </template></component>
const App = {
  template: `
    <component><template v-slot:header="slotData"><h1>默认插槽内容:{{ slotData }}</h1>
      </template></component>
  `,
  data() {
    return {
      slotData: '插槽数据'
    }
  }
}

在父组件中,使用 v-slot 和一个范围变量(slotData)来将插槽数据传递给子组件。子组件可以访问插槽数据(slotData)。