在写vue3代码时,遇到了父组件传值给子组件,但是子组件无法及时刷新数据,父组件数据是异步获取的。
使用了很多方法,froceUpdate(),nextTick之类的方法都试过了没有生效。
所以需要在父组件对子组件进行刷新。
解决思路:文章来源:https://www.toymoban.com/news/detail-517872.html
- 利用vue diff算法的特点,更新key,强制使子组件刷新
代码:文章来源地址https://www.toymoban.com/news/detail-517872.html
//dom
//给需要刷新的子组件加上一个自定义的key
<v-number :num="memoryNum" :fontSize="28" class="number" :key="keyNum"></v-number>
//ts
//所有数据加载完毕之后,更改这个key即可
let keyNum = ref(0);
onMounted(async () => {
await init();
keyNum.value++;
});
到了这里,关于vue3子组件数据无法更新的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!