在渲染数据的时候,有时候会报错Invalid attempt to destructure non-iterable instance.  In order to be iterable, non-array objects must have a [Symbol.iterator]() method.找了很久都没发现哪里错了,总说我试图破坏不可迭代实例的结构无效。为了具有可迭代性,非数组对象必须有一个[Symbol.iterator]()方法。

所以在通过网络请求获取数据的时候,给渲染数据的对象赋值时候,||一个空数据,就不会报错了。

如下:相当于给一个默认初始值。

当然有更好的方法欢迎交流~~~

this.cateList = result[0].data.list || [];	
this.bannerList = this.showBannerList(result[1].data.list) || []; 

 

Logo

基于 Vue 的企业级 UI 组件库和中后台系统解决方案,为数万开发者服务。