Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'XXX')
我遇到的这个问题的原因是在html中用到了vuex中映射的数据,代码如下
<html>
<p>正在点餐:{{tables.list.length}}桌</p>
</html>
<script>
computed:{
...mapState([
'tables'
])
}
</script>
而这个数据是在mounted生命周期中通过fetch异步请求获得的
mounted(){
this.$getTables()
}
所以导致在解析html的时候未能找到tables.list对象
解决方法:
在vuex.js中预先定义数据解构,这样在解析时能够找到数据不报错,并在页面加载完成前更新数据
tables: {
list:[]
}