本篇内容主要讲解“Vue使用v-for语句时抛出错误怎么解决”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Vue使用v-for语句时抛出错误怎么解决”吧!
Vue 中使用v-for语句抛出错误的解决方案
今天在维护以前的项目的时候遇见了下面的报错情况,开始我以为是因为jQuery和Vue冲突了,所以把以前的jQuery改了,但是还是出现同样的错误…通过查阅资料,发现是因为循环的变量里面的值重复了,导致Vue报错
复制代码 代码如下:
Uncaught (in promise) TypeError: Cannot read property ‘removeChild' of null
接下来查了一下解决方案,发现在Vue 2.0之前的版本可以通过在v-for语句后面加如下语句解决:
<div v-for="item in items" track-by="id">
不过在Vue 2.0之后的版本中track-by改为了key,所以对于Vue 2.0之后的版本可以使用:
<div v-for="item in items" v-bind:key="item.id">
其实,在查看API返回的JSON数据后,发现重复请求了接口,所以,这个问题本来就不应该出现的。所以特意在接口获取数据的地方加上了一个过滤方法:
self.goodsList.indexOf(arr) === -1 ? self.goodsList.push(arr) : undefined
这句语句就是说如果获取的数组元素不重复的话,才将数组元素加入到列表中。
Vue的优点
Vue具体轻量级框架、简单易学、双向数据绑定、组件化、数据和结构的分离、虚拟DOM、运行速度快等优势,Vue中页面使用的是局部刷新,不用每次跳转页面都要请求所有数据和dom,可以大大提升访问速度和用户体验。
到此,相信大家对“Vue使用v-for语句时抛出错误怎么解决”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!