<div v-for="(item,i) in doc" :key="i">
<el-row>
<el-col :span="">
文案模块{{i+}}
</el-col>
<el-col :span="" :offset="">
<el-button @click="deletemodel(item,doc,i)" size="small">删除</el-button>
</el-col>
</el-row> <p class="pline"></p>
<el-form-item label="请设置模块标题:">
<el-input placeholder="请输入3-6个字的标题" class="uploadwidth" maxlength="" minlength="" v-model="item.title"></el-input>
</el-form-item>
<el-form-item >
<!-- <el-input type="textarea" :autosize="{ minRows: 5, maxRows: 8}" class="inputwidth" v-model="item.content" placeholder="请输入文案"></el-input> -->
<vue-ueditor-wrap v-model="item.content"></vue-ueditor-wrap>
</el-form-item> </div> <div v-for="(item,i) in pic" :key="i">
<el-row>
<el-col :span="">
图片模块{{i+}}
</el-col>
<el-col :span="" :offset="">
<el-button @click="deletemodel(item,pic,i)" size="small">删除</el-button>
</el-col>
</el-row> <p class="pline"></p>
<el-form-item label="请设置模块标题">
<el-input class="uploadwidth" placeholder="请输入3-6个字的标题" maxlength="" minlength="" v-model='item.title'></el-input>
</el-form-item>
<el-form-item label="PC端:">
<el-upload class="upload-demo uploadwidth" action="/admin/upload" name="file" :limit="" :on-success="successPicPc" :file-list="fileList">
<div style="display:inline-block; margin-left:10px;" slot="tip"> <el-popover v-if="item.pcTopImgUrl!==null&&item.pcTopImgUrl!==undefined&&item.pcTopImgUrl!==''" placement="right" width="" trigger="click">
<img :src="item.pcTopImgUrl" alt="" width="100%">
<el-button slot="reference" size="small">查看</el-button>
</el-popover>
</div>
<el-button size="small" type="primary" @click="test(i)">上传</el-button>
</el-upload> </el-form-item>
<el-form-item label="H5端:">
<el-upload class="upload-demo uploadwidth" action="/admin/upload" name="file" :on-success="successPicH5" :limit="" :file-list="fileList">
<div style="display:inline-block; margin-left:10px;" slot="tip"> <el-popover v-if="item.h5TopImgUrl!==null&&item.h5TopImgUrl!==undefined&&item.h5TopImgUrl!==''" placement="right" width="" trigger="click">
<img :src="item.h5TopImgUrl" alt="" width="100%">
<el-button slot="reference" size="small">查看</el-button>
</el-popover>
</div>
<el-button size="small" type="primary" @click="test(i)">上传</el-button>
</el-upload>
</el-form-item>
</div>

图片模块在删掉的时候她的富文本框没有被删除,其他部分的被删除了,就这个出现了滞后性,经过排查是v-for的key值出现的bug

上面两个部分的代码框架是类似的,vue的数据驱动是精准的数据驱动,详细的原因大家去查v-for的key值吧,我的解决方法是

把key值改一下,在原来+10.其实最好key值是唯一的,不要用i,索引

vuejs的v-for遇到过的数据渲染错误的bug,原因是和key值有关的更多相关文章

  1. [BUGCASE]FixedDataTable表格数据渲染错误

    一.问题描述 广告配置中绑定第三方规格ID表格数据,有一部分展示错乱,具体如下: 表格组件使用 Facebook 的 (fixed-data-table) 组件 二.原因分析 1.检查props 先查 ...

  2. vuejs动态组件给子组件传递数据

    vuejs动态组件给子组件传递数据 通过子组件定义时候的props可以支持父组件给子组件传递数据,这些定义的props在子组件的标签中使用绑定属性即可,但是如果使用的是<component> ...

  3. json数据渲染表单元素出现的问题

    解析页面表单元素 parseForm: function () { var data = {}; $(this).find('input').each(function () { switch ($( ...

  4. 数据表记录包含表索引和数值(int范围的整数),请对表索引相同的记录进行合并,即将相同索引的数值进行求和运算,输出按照key值升序进行输出

    此题如果直接使用有序的TreeMap就不需要这样折腾: 1.map的key值唯一性,故就不在需要set集合来去重 2.使用map后利用key的唯一性,把序列号相同的数据直接加在一起,代码会很简洁 pa ...

  5. Spring MVC 4.1.4 RESTFUL风格返回JSON数据406错误处理

    Spring MVC 4.1.4 RESTFUL风格返回JSON数据406错误处理 今天在使用spring4.1.4,使用ResponseBody注解返回JSON格式的数据的时候遇到406错误. 解决 ...

  6. 【日常笔记】datatables表格数据渲染

    现在有很多表格渲染方式 这里只是记录怎么使用datatables渲染数据 使用datatables可以更方便的来渲染数据 [中文api]http://datatables.club/index.htm ...

  7. DataContext 数据在F5刷新频繁,会出现数据读取错误

    DataContext 数据在F5刷新频繁,会出现数据读取错误 DataContext是 Linq to sql数据模型的底层数据库对象所有LInq数据表对象都是由它派生的, 只要建立一个数据库操作, ...

  8. 解决sql2008连接数据库,无法为该请求检索数据,错误916

    通常在使用sql server management studio 2008 连接数据库,可以链接上,但是无法查看自己的数据库,点击数据库或刷新数据库列表后,提示:无法为该请求检索数据,错误916,如 ...

  9. 非正确使用浮点数据由项目产生BUG讨论的问题

    乘分配 当小学学会了乘法分配.详细乘法分配:并与多个两个数相乘的,他们能够把这个数字乘以,然后加入.由于一个恒定.乘法分配律也能够使用表达式的定义"(a+b)×c = a×c+b×c&quo ...

随机推荐

  1. filezilla无法登陆ubuntu虚拟机

    一般情况下,是新安装的虚拟机没有安装ssh造成的 进入虚拟机控制台,输入 sudo apt-get openssh-server 回车 等安装完成即可登陆.

  2. Appium(七):Appium API(一) 应用操作

    1. 应用操作 本章所罗列的方法主要针对应用的操作,如应用的安装.卸载.关闭.启动等. 把前面的启动代码放在这里,后面只展示不同的部分. # coding:utf-8 from appium impo ...

  3. Jmeter脚本参数化和正则匹配

    我们在做接口测试过程中,往往会遇到以下几种情况 每次发送请求,都需要更改参数值为未使用的参数值,比如手机号注册.动态时间等 上一个接口的请求体参数用于下一个接口的请求体参数 上一个接口的响应体参数用于 ...

  4. WPF炫酷UI及动画

    偶然看见了一张图,感觉挺好看的,花了点时间将他转化成了我代码仓库的一部分.虽然不难但也费时间.其中除了背景是百度的一张底图,其他所有内容均通过WPF的Path.Line.TextBlock.Borde ...

  5. centos开启ftp服务

    新安装的要先配置网络 $_> vi /etc/sysconfig/network-scripts/ifcfg-eno16777736 最后一行 onboot = yes $_> yum i ...

  6. 关于vue里的$refs属性

    vuejs的极大程度的帮助减少了对dom的操作,他主要通过添加ref属性,但是当获取this.$refs属性时,稍有不注意就会输出undefined导致我们对dom节点的操作报错. this.$ref ...

  7. Angular-----代码风格指南!!!(很重要)

    一:文件结构 1).单一规则:坚持每个文件只定义一样东西(例如服务或组件),考虑把文件大小限制在 400 行代码以内. 单组件文件非常容易阅读.维护,并能防止在版本控制系统里与团队冲突: 单组件文件可 ...

  8. WestWild: 1.1: Vulnhub Walkthorugh

    启动界面 主机层面扫描: ╰─ nmap -p1-65535 -sV -A 10.10.202.131 Starting Nmap 7.70 ( https://nmap.org ) at 2019- ...

  9. Python监控主机是否存活,并发报警邮件

    利用python写了简单测试主机是否存活脚本,此脚本不适于线上使用,因为网络延迟.丢包现象会造成误报邮件,那么后续会更新判断三次ping不通后再发报警邮件,并启用多线程处理. #!/usr/bin/e ...

  10. linux 磁盘分区和挂载看这一篇就够了

    Linux fdisk 和 mount 命令操作指南,linux磁盘管理.新增磁盘.挂载新硬盘(linux运维入门) 首先列出文件系统的整体磁盘空间使用情况.可以用来查看磁盘已被使用多少空间和还剩余多 ...