vue怎么向slot中的组件传参?

组件A

<div>
    <template v-for="(row, index) in rows">
      <tr>
        <slot :row="row" :index="index">
        </slot>
      </tr>
    </template>
</div>

组件B

<div>
<slot></slot>
</div>

组件C

<A :rows='list'>
    <B>test</B>
</A>

组件A该如何向组件B传参呢?

阅读 2k
1 个回答

组件A:

<template>
  <div>
    <template v-for="(row, index) in rows">
      <slot :row="row" :index="index" />
    </template>
  </div>
</template>
<script>
export default {
  data() {
    return {
      rows: ["a", "b", "c"]
    };
  }
};
</script>

组件B:

<template>
  <div>
    {{ row }}
    {{ index }}
  </div>
</template>
<script>
export default {
  props: ["row", "index"]
};
</script>

组件C:

<A>
  <template v-slot:default="{ row, index }">
    <B :row="row" :index="index"></B>
  </template>
</A>
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题