这个错误是什么
- 某个数组找不到值,有一个地方进行了强行赋值
为什么会报这个错误
- 因为你在使用数组时,有一些v-for循环渲染,它不是拿着data创建的 [] 空数组去遍历,而是在某个地方你去获取下拉框的数据,或者获取data数组的数据时,你强行将原本的 data 挂载的数据 由 [] 变成 undefined,在页面上的v-for渲染就会直接报错!
- 而不是什么在v-if="data"判断这个,这种解决方法就是不让其渲染了。根本没有解决问题所在。
怎么解决这个错误
- 首先,你必须去检查生命周期里的所有调用,可以使用debug来调查,那里面一定是请求后台的一些方法,或者一些赋值的方法
- 我们找到出问题的方法,对这个方法里面为什么要进行赋值进行分析,根据业务自行去在父组件完成一些数据的提前获取,在进行子组件的赋值操作
- 到这里,问题基本得到解决!!!