查找数据对象中有改变的行数据

一、map改变属性

步骤:

        在数据map时,每一行添加一个改变属性,例:isEdit:false,当改变了某一行时,将当前行的isEdit置为true,最后从总体数据内查找isEdit为true的数据

缺点:

        需要遍历整体数据,数据量太大时会缓慢

二、添加中间数组

步骤:

        1、后端传入的数据在每一行都添加上对应行的index值,需要保证行数据的index和数据内的index对应

        2、设置一个数组changeData以便于存储改变的数据,某一行的数据发生改变时,将改变后的此行数据push到changeData中

        3、向changeData内添加数据时,需要判断changeData内是否存在当前行,不存在则push,存在则更改当前行

        4、如果需要没有dirty data(脏数据,即改变后又变回原来数据的行数据),可在最后遍历changeData,根据index判断新旧数据,完全相同的行则删除

   ( JSON.stringify(changeItem) === JSON.stringify(oldTableData).value[changeItem.index] )

缺点:

        可能会有脏数据,如果想要去除则需要多一步判断(一般可以不去)

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值