uniapp 父组件如何更新子组件数据
时间: 2023-12-10 11:02:32 浏览: 88
在uniapp中,父组件可以通过props向子组件传递数据,子组件可以通过$emit向父组件传递数据。如果需要父组件主动获取子组件中的数据和方法,可以使用$refs来实现。
以下是uniapp父组件如何更新子组件数据的示例代码:
1.在父组件中定义子组件,并为子组件定义ref属性:
```html
<template>
<div>
<child :msg="msg" ref="child"></child>
<button @click="updateChildData">更新子组件数据</button>
</div>
</template>
<script>
import child from '@/components/child.vue'
export default {
components: {
child
},
data() {
return {
msg: '父组件数据'
}
},
methods: {
updateChildData() {
this.$refs.child.updateData('子组件数据')
}
}
}
</script>
```
2.在子组件中定义props和方法,并在方法中更新子组件数据:
```html
<template>
<div>
<p>{{msg}}</p>
</div>
</template>
<script>
export default {
props: {
msg: {
type: String,
default: ''
}
},
methods: {
updateData(data) {
this.msg = data
}
}
}
</script>
```
在上述示例代码中,父组件通过$refs获取子组件实例,并调用子组件的updateData方法来更新子组件数据。子组件中的updateData方法接收一个参数data,用来更新子组件中的msg数据。
阅读全文