当前位置: 首页 > article >正文

前端开发之deepmerge的使用和示例(对象的深度合并)

前端开发之deepmerge的使用和示例

  • 前言
  • 使用场景
  • 链接
  • 效果图
  • vue中简单案例
    • 1、安装插件
    • 2、示例
    • 结果

前言

在平时的项目中经常会涉及到对象除了第一层以及下层进行深度合并,本问讲解的是深度合并的插件deepmerge,使用此插件避免通过递归实现一些深度合并所带来的问题

使用场景

经常使用到的场景是前后端交互的时候需要传全量的数据这时候就需要把选择的表单和之前后端返回的数据合并整体传回给后端

链接

gitee链接:deepmerge在gitee地址

效果图

在这里插入图片描述
在这里插入图片描述

vue中简单案例

1、安装插件

npm install deepmerge

2、示例

本文采用的是通过vue3进行演示
<template>
  <div>
    你好
  </div>
</template>

<script>
import { defineComponent, ref, nextTick } from 'vue'
import merge from 'deepmerge'

export default defineComponent({
  name: 'coPy',
  setup () {
    const deepObj1 = {
      a: {
        a: 'aaaaaaaa'
      },
      b: {
        b: 'bbbbbbb'
      },
      c: {
        c: 'ccccccc'
      }
    }

    const deepObj2 = {
      a: {
        a: 'aaaaaaaaccc'
      },
      b: {
        b: 'bbbbbbb'
      },
      c: {
        a: {
          b: {
            b: 'bbbbbbbbbbb'
          }
        }
      }
    }

    const deepObj3 = merge(deepObj1, deepObj2)

    const deepObj4 = Object.assign(deepObj1, deepObj2)
    console.log('deepObj1', deepObj1)
    console.log('deepObj2', deepObj2)
    console.log('使用deepmerge进行合并', deepObj3)
    console.log('使用object.assign 进行浅合并', deepObj4)

    return {
     
    }
  }
})
</script>
<style lang="less" scoped>
</style>

结果

在这里插入图片描述


http://www.kler.cn/a/231999.html

相关文章:

  • Excel超级处理器:高效实现2种批量生成二维码方式
  • Cartographer激光雷达slam -20241116
  • mybatis的动态sql用法之排序
  • 基于Lora通讯加STM32空气质量检测WIFI通讯
  • 微服务瞎写
  • 常见的测试方法
  • Docker-Learn(二)保存、导入、使用Docker镜像
  • ChatGPT 3.5与4.0:深入解析技术进步与性能提升的关键数据
  • 3分钟带你了解Vue3的nextTick()
  • LabVIEW网络测控系统
  • jsp康养小镇管理系统Myeclipse开发mysql数据库web结构java编程计算机网页项目
  • 【MIMO】
  • ACK One Argo工作流:实现动态 Fan-out/Fan-in 任务编排
  • bpmn.js一个基于Bpmn 2.0的前端工作流展示和绘制工具
  • NLP入门系列—词嵌入 Word embedding
  • JAVA面试汇总总结更新中ing
  • ICLR 2024 | Harvard FairSeg:第一个研究分割算法公平性的大型医疗分割数据集
  • Linux内核与驱动面试经典“小”问题集锦(5)
  • 服务器和云计算之间有什么关系?
  • .net最好用的JSON类Newtonsoft.Json获取多级数据SelectToken
  • 水题中的稀奇古怪trick合集
  • MySQL的MVCC机制
  • Android studio打开md无法显示md渲染问题
  • Python并发
  • 图数据库 之 Neo4j - 背景介绍(1)
  • Yii特性