vue v-for循环重复数据无法添加问题解决方法【加track-by='索引'】
本文实例讲述了vue v-for循环重复数据无法添加问题解决方法。分享给大家供大家参考,具体如下:
问题:
错误提示如下:
解决问题的代码示例:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>www.jb51.net vue v-for循环重复数据无法添加问题</title> <style> </style> <script src="vue.js"></script> <script> </script> </head> <body> <div id="box"> <input type="button" value="添加" @click="add"> <ul> <li v-for="val in arr" track-by="$index"> {{val}} </li> </ul> </div> <script> var vm=new Vue({ data:{ arr:['apple','pear','orange'] }, methods:{ add:function(){ this.arr.push('tomato'); } } }).$mount('#box'); </script> </body> </html>
注意:这里在<li v-for="val in arr">
中添加了track-by="$index"
即:
<li v-for="val in arr" track-by="$index">
希望本文所述对大家vue.js程序设计有所帮助。
相关推荐
-
Vue中的v-for循环key属性注意事项小结
当Vue用 v-for 正在更新已渲染过的元素列表是,它默认用"就地复用"策略.如果数据项的顺序被改变,Vue将不是移动DOM元素来匹配数据项的改变,而是简单复用此处每个元素,并且确保它在特定索引下显示已被渲染过的每个元素. 为了给Vue一个提示,以便它能跟踪每个节点的身份,从而重用和重新排序现有元素,你需要为每项提供一个唯一 key 属性.key属性的类型只能为 string或者number类型. 在下面这个例子中,如果不给 p 元素绑定key,我先选中第一个, 然后输入ID和Nam
-
vue2.0使用v-for循环制作多级嵌套菜单栏
使用v-for循环生成一个多级嵌套菜单栏,只要你学会了这个方法,几乎所有的菜单栏都可以实现了. 方法 <div class="level-one" v-if="obj.level == 1" v-for="obj in bar1"><a>{{obj.title}}</a> <div class="level-two" v-if="obj1.parentId == obj.id
-
Vue中控制v-for循环次数的实现方法
在Vue中的遍历方法v-for控制循环次数的方法可以通过以下两种方法 1.截取循环的数据 v-for="(item,index) in domainList.slice(0, 2)" 用这样的方法可以截取循环的数据长度,从而控制循环的次数 2.通过v-if来控制 v-for="(item,index) in domainList" v-if="index<3" 在标签下紧跟v-if来进行控制,这里是用索引来进行控制的,所以循环的时候记得把i
-
vue使用Element组件时v-for循环里的表单项验证方法
标题描述看起来有些复杂,有vue,Element,又有表单验证,还有v-for循环?是不是有点乱?不过我相信开发中遇到过此问题的同学,一看就明白我说的意思了. 首先Element组件有一套完善的表单验证方法,官方文档写的也很清楚:Element表单验证API,正常按照官方文档添加rules规则,需要验证的表单项设置prop,然后提交表单时通过form的validate方法验证表单项就可以了. 然鹅问题来了,如果表单项里有通过v-for动态生成的表单项,如何设置验证呢?这个官方文档并没有明确的说法
-
浅谈vue.js中v-for循环渲染
这两天学习了Vue.js 感觉v-for循环渲染这个地方知识点挺多的,而且很重要,所以,今天添加一点小笔记. 一.简介 vue.js 的循环渲染是依赖于 v-for 指令,它能够根据 vue 的实例里面的信息,循环遍历所需数据,然后渲染出相应的内容.它可以遍历数组类型以及对象类型的数据,js 里面的数组本身实质上也是对象,这里遍历数组和对象的时候,方式相似但又稍有不同. (一)遍历对象 <div id="app"> <ul> <li v-for="
-
vue中v-for循环给标签属性赋值的方法
1.给每个按钮添加class的属性值以及icon图标属性值,通过v-for实现自动添加样式,发现属性值无法显示,切记在属性前加上v-bind <html> <head> <meta charset="utf-8"> <title>v-for在线测试实例</title> <script src="https://cdn.staticfile.org/vue/2.2.2/vue.min.js"> &
-
VUE v-for循环中每个item节点动态绑定不同函数的实例
一. 业务场景: 一个title 处 可能有 一个或多个按钮, 按钮对应不同的响应事件 二. 思路 : 按钮个数 根据传入的数据length 来循环渲染, 每条数据对应的事件名称 通过动态绑定 三. 封装组件 1. 视图层面 2. 代码部分 2.1 结构部分 <!-- 多个button组件--> <titleAddBtn :addBtnList="addBtnList" @clkCallBk="listenCall"></titleAd
-
vue2.0 可折叠列表 v-for循环展示的实例
先上一张效果图: 以前用angularjs操作基本上都是要取到每个列表的id再循环判断是不是当前点击的列表来显示折叠. 今天在这个项目 https://github.com/IFmiss/vue-music上看到操作很简单,并没有如此复杂.赶紧记录一下: 折叠列表单独做一个组件,图标是用的iconfont中生成的css链接:myMusicSheetList.vue <template> <div class="sheet-list"> <div class
-
解决vue this.$forceUpdate() 处理页面刷新问题(v-for循环值刷新等)
问题描述: 在使用Vue框架开发时,在函数中改变了页面中的某个值,在函数中查看是修改成功了,但在页面中没有及时刷新改变后的值: 解决: 运用 this.$forceUpdate()强制刷新 代码案例 <Select v-model="carSafeLine.insuranceName" placeholder="请选择" class="mulisel option-h" filterable clearable :disabled=&quo
-
vue基础之data存储数据及v-for循环用法示例
本文实例讲述了vue data存储数据及v-for循环用法.分享给大家供大家参考,具体如下: vue data里面存储数据 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>www.jb51.net vue data里面存储数据</title> <style> </style> &l
-
关于vue v-for循环解决img标签的src动态绑定问题
在解决这个问题上,遇到了很多错误的方案,一直没有跑通,有些是图片标记出现了,但是图片内容没有出现,这就很让人头疼了,下面,我讲解我操作成功的案例吧. 1.目录结构如下 图片放置在与src同级的static文件夹下,在这里,我放置在slider中 2.数据配置如下: 注意引入的路径,直接从static文件中对应的地方引入. data () { return { product:[ { "src":'../../static/slider/logo1.jpg', "decerat
随机推荐
- 一次真实的DDoS攻击防御实战
- 服务器应用自动重新启动IIS批处理 原创
- sql server 2012安装程序图集
- javascript中的对象创建 实例附注释
- Vue.js每天必学之数据双向绑定
- 关于网页中的无缝滚动的js代码
- java实现两台服务器间文件复制的方法
- Java中List与Map初始化的一些写法分享
- IOS 改变键盘颜色代码
- windows下使用IIS配置的PHP无法上传文件的解决方法
- android开发教程之使用listview显示qq联系人列表
- 深入理解C#中的Delegate
- JS简单实现动画弹出层效果
- C++形参与实参的区别实例解析
- jQuery动画特效实例教程
- jquery专业的导航菜单特效代码分享
- Android 实现手机拨打电话的功能
- 对联广告 可关闭
- 微信小程序 网络API Websocket详解
- Mongodb在Linux环境下的部署