【发布时间】:2018-06-17 23:11:48
【问题描述】:
我想知道如何让父组件知道插槽内的子组件。
例如,如果我想创建一个滑块并且我希望具有以下结构:
在我看来:
<vue-slider>
<vue-slide name="First slide!">First slide content</vue-slide>
<vue-slide name="Second slide!">Second slide content</vue-slide>
</vue-slider>
VueSlider.vue
<template>
<div class="slider">
<ol>
<li v-for="(slide,index) in slides">{{slide.name}}</li>
</ol>
<slot></slot>
</div>
</template>
<script>
export default {
data: function(){
return {
slides: [],
}
}
}
</script>
VueSlide.vue
<template>
<div class="slide">
<slot></slot>
</div>
</template>
<script>
export default {
props: {
'name': {
}
}
}
</script>
所以我想在父组件上填充幻灯片数组。我正在考虑在安装每张幻灯片时发出一个事件,但后来我在 vue 文档上阅读了这个:
您不能使用 $on 来监听孩子发出的事件。您必须在模板中直接使用 v-on,如下例所示。
谢谢!
【问题讨论】:
标签: javascript vue.js vuejs2 vue-component