这些问题的变体似乎已经被问过了,但我无法找到一个具体到我的情况的答案。
我试着用
$emit
正如一些其他线程所建议的,但如果我没有弄错的话,它似乎只有在孩子发出警报来提醒家长时才起作用,而不是反过来。
异步调用后刷新子级的最佳方法是什么?我知道Vuex是一种选择,但我希望在了解更多之前了解Vue3的生命周期和道具是如何工作的。
以下是我目前拥有的(在放弃之后)
)
起源:
<template>
<div>
<TextBlock :myText="myText" />
</div>
</template>
<script>
...
export default {
components: {
TextBlock
},
data: () => ({
myText: []
}),
async created() {
if (this.$route.params.text_id != null) {
this.myText = await GetContent(this.$route.params.text_id);
console.log(this.myText); // Confirmed that text is updated
}
}
};
</script>
儿童:
<template>
<code>
{{ myText }}
</code>
</template>
<script>
...
export default {
...
props: {
myText: String
},
};
</script>