VUE3向子组件传递Function,在子组件props中显示为undefined
时间: 2023-05-21 16:06:04 浏览: 162
您好,可以通过将函数包装在对象中,并将该对象传递给子组件的props来解决此问题。例如:
```html
<!-- 父组件模板 -->
<template>
<ChildComponent :childFunc="parentFunc" />
</template>
<script>
export default {
data() {
return {
message: 'Hello, World!'
}
},
methods: {
parentFunc() {
console.log(this.message);
}
}
}
</script>
<!-- 子组件模板 -->
<template>
<div>{{ childFunc }}</div>
</template>
<script>
export default {
props: {
childFunc: {
type: Object,
required: true
}
},
mounted() {
// 调用父组件传递的函数
this.childFunc();
}
}
</script>
```
在这个例子中,我们将父组件的方法 `parentFunc` 包装到对象 `childFunc` 中,并将其传递给子组件的 `childFunc` prop。在子组件中,我们调用 `this.childFunc()` 来执行该函数。这样就可以避免出现undefined的问题。
阅读全文