vue 父组件定义一个id 子组件获取父组件id自增,循环子组件
时间: 2023-09-16 08:08:01 浏览: 90
vue父组件中获取子组件中的数据(实例讲解)
5星 · 资源好评率100%
可以通过 props 和事件来实现。
首先,在父组件中定义一个 id,然后将其传递给子组件:
```html
<template>
<div>
<div>{{ id }}</div>
<ChildComponent :id="id" @increment="id++" v-for="i in count" :key="i" />
</div>
</template>
<script>
import ChildComponent from './ChildComponent.vue'
export default {
components: { ChildComponent },
data() {
return {
id: 1,
count: 5 // 子组件数量
}
}
}
</script>
```
在子组件中,接收父组件传递的 id,然后在组件初始化时触发一个事件,通知父组件自增 id:
```html
<template>
<div>{{ childId }}</div>
</template>
<script>
export default {
props: ['id'],
data() {
return {
childId: this.id
}
},
mounted() {
this.$emit('increment')
}
}
</script>
```
这样,每当子组件初始化时,都会触发自增 id 的事件,然后循环创建子组件,并将父组件的 id 传递给它们,从而实现了子组件获取父组件 id 自增的效果。
阅读全文