vislite
Version:
灵活、快速、简单的数据可视化交互式跨端前端库
30 lines (22 loc) • 737 B
text/typescript
import { isPlainObject } from "./type"
// 初始化配置
export function initOption(setOption: any, defaultOption: any) {
for (const key in setOption) {
defaultOption[key] = setOption[key]
}
return defaultOption
}
// 合并配置
export function mergeOption(oldOption: any, newOption: any) {
(function doit(oldOption, newOption) {
for (const key in newOption) {
const value = newOption[key]
if (isPlainObject(value)) {
if (!oldOption[key]) oldOption[key] = {}
doit(oldOption[key], newOption[key])
} else {
oldOption[key] = value
}
}
})(oldOption, newOption)
}