当前位置:网站首页>递归检查配置项是否更变并替换
递归检查配置项是否更变并替换
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]
})
}
边栏推荐
- IPFS部署及文件上传(golang)
- BioVendor Human Club Cellular Protein (CC16) Elisa Kit Research Fields
- 内卷的正确打开方式
- 2022-07-30 mysql8执行慢SQL-Q17分析
- Oracle19c安装图文教程
- analog IC layout
- MySQL - CRUD operations
- Swift运行时(派发机制)
- AWR analysis report questions for help: How can SQL be optimized from what aspects?
- 【ORB_SLAM2】void Frame::AssignFeaturesToGrid()
猜你喜欢
随机推荐
罗德里格斯公式(Rodrigues‘ Rotation Formula)推导
IMU预积分的简单理解
内卷的正确打开方式
Service discovery of kubernetes
AWR analysis report questions for help: How can SQL be optimized from what aspects?
考完PMP学什么?前方软考等着你~
IPFS部署及文件上传(golang)
ros多客户端请求服务
GTK RGB图像绘制
【web】Understanding Cookie and Session Mechanism
esp32经典蓝牙和单片机连接,,,手机蓝牙作为主机
Flask入门学习教程
qt点云配准软件
机器人领域期刊会议汇总
永磁同步电机36问(二)——机械量与电物理量如何转化?
KICAD 拉线宽度无法修改,解决方法
feign调用不通问题,JSON parse error Illegal character ((CTRL-CHAR, code 31)) only regular white space (r
Nanoprobes丨1-mercapto-(triethylene glycol) methyl ether functionalized gold nanoparticles
canal同步Mariadb到Mysql
Swift运行时(派发机制)









