英文:
How to use function from parent Vue component in child?
问题
Parent 组件中,您希望每隔 1 秒自动调用 checkStatus
函数。您可以使用 JavaScript 的 setInterval
函数来实现这个目标。以下是修改后的代码:
<template>
<Dialog :msg="message" />
</template>
<script>
export default defineComponent({
setup() {
const message = ref({
text: '',
});
const checkStatus = (*some variables*) => {
message.value.text = 'Loading...';
// 在此添加您的数据处理逻辑
return message;
}
// 每隔 1 秒自动调用 checkStatus 函数
setInterval(checkStatus, 1000);
return {
message,
}
}
})
</script>
现在,checkStatus
函数将每隔 1 秒自动执行一次,并将结果传递给子组件。
Child 组件的代码保持不变。
英文:
I've got a problem. In parent component I get some data, calculate them and then return to props for child component. Now I call this function on button click, but I want to call it automatically for example every 1 sec. How can I do it?
Parent:
<template>
<Dialog :msg="message"/>
</template>
<script>
export default defineComponent({
const message = ref({
text: '',
});
return{
checkStatus: (*some variables*) => {
message.value.text = 'Loading...'
return message;
}
}
})
</script>
Child:
<template>
<h3>{{msg.text}}</h3>
</template>
<script>
export default defineComponent({
props:['msg']
})
</script>
</details>
# 答案1
**得分**: 1
你可以设置一个定时器来调用函数,例如,每隔5秒调用`checkStatus`,添加以下代码:
```javascript
setInterval(() => {
this.checkStatus()
}, 5000)
英文:
You can set a timer to call the function as follows - for example to call checkStatus
every 5 seconds, add:
setInterval(()=>{
this.checkStatus()
},5000)
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论