当前位置:网站首页>递归检查配置项是否更变并替换
递归检查配置项是否更变并替换
2022-08-02 02:39:00 【闲鱼_JavaScript】
介绍
- 配置项有原有配置项的情况下,又不想变动其他的配置又能更改提出来配置。参考 echarts 的配置
- 本文以递归的方式,实现了对象格式检查并替换,数组的话可以跟着规则添加就行;
- 支持相同属性的值以传入的属性值为主;在原配置没有的属性则直接加进去(当前级);
- 根据第三点可以支持 echarts、地图等二次封装配置。
实现代码
const configSet = (config, eCData = echartsComponent.data) => {
if (!config) return;
Object.keys(eCData).forEach(key => {
if (!(key in config)) return
if (Object.prototype.toString.call(config[key]) === '[object Object]') return configSet(config[key], eCData[key])
eCData[key] = config[key]
})
Object.keys(config).forEach(key => {
if (!(key in eCData)) eCData[key] = config[key]
})
}
边栏推荐
猜你喜欢

Nanoprobes免疫测定丨FluoroNanogold试剂免疫染色方案

CASE2023

The failure to create a role in Dahua Westward Journey has been solved

canal同步Mariadb到Mysql

FOFAHUB使用测试

四元数、罗德里格斯公式、欧拉角、旋转矩阵推导和资料

接口测试神器Apifox究竟有多香?

面对职场“毕业”,PM&PMO应该如何从容的应对?如何跳槽能够大幅度升职加薪?

Chapter 7 Noise analysis

AI target segmentation capability for fast video cutout without green screen
随机推荐
1688API
数值积分方法:欧拉积分、中点积分和龙格-库塔法积分
Good News | AR opens a new model for the textile industry, and ALVA Systems wins another award!
29. 删除链表中重复的节点
60 Feature Engineering Operations: Using Custom Aggregate Functions【Favorites】
analog IC layout-Parasitic effects
FOFAHUB使用测试
openGauss切换后state状态显示不对
罗德里格斯公式(Rodrigues‘ Rotation Formula)推导
Moonbeam and Project integration of the Galaxy, bring brand-new user experience for the community
内卷的正确打开方式
C#测试项目中属性的用法
四元数、罗德里格斯公式、欧拉角、旋转矩阵推导和资料
记一个gorm初始化的坑
Nanoprobes免疫测定丨FluoroNanogold试剂免疫染色方案
IMU预积分的简单理解
Safety (2)
Can Youxuan database import wrongly be restored?
使用DBeaver进行mysql数据备份与恢复
一次SQL优化,数据库查询速度提升 60 倍