【发布时间】:2019-02-13 05:07:20
【问题描述】:
我有 2 个对象。第一个对象 A 的所有属性的默认值为“启用”。
public A(): any {
const enabledObject = { enabled: true };
return {
property1: enabledObject,
property2: enabledObject,
property3: enabledObject,
property4: enabledObject,
};
}
第二个对象有不同的属性
public B(): any {
const appProperty = {
property1: { enabled: true },
property2: { enabled: false},
property3: { enabled: true },
property4: { enabled: false},
};
}
我想返回对象 A 减去对象 B 中指定为 'enabled=false' 的任何属性。
public A(): any {
const enabledObject = { enabled: true };
return {
property1: enabledObject,
property3: enabledObject,
};
}
我正在尝试使用以下方法解决此问题,但它不起作用。
return _.assignInWith(A, B, this.Disabled);
private Disabled(destination: any, source: any, key: any): any {
const disabledObject = { enabled: false };
if (_.isUndefined(destination)) {
return disabledObject;
}
return destination;
}
【问题讨论】:
标签: javascript typescript lodash