diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/fields/Doc.ts | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/fields/Doc.ts b/src/fields/Doc.ts index f8351c238..7714ce46d 100644 --- a/src/fields/Doc.ts +++ b/src/fields/Doc.ts @@ -511,15 +511,15 @@ export namespace Doc { */ export function assign<K extends string>(doc: Doc, fields: Partial<Record<K, Opt<FieldType>>>, skipUndefineds: boolean = false, isInitializing = false) { isInitializing && (doc[Initializing] = true); - Object.keys(fields).forEach(key => { - if (Object.prototype.hasOwnProperty.call(fields.hasOwnProperty, key)) { + Object.keys(fields) + .filter(key => Object.prototype.hasOwnProperty.call(fields, key)) + .forEach(key => { const value = (fields as any)[key]; if (!skipUndefineds || value !== undefined) { // Do we want to filter out undefineds? doc[key] = value; } - } - }); + }); isInitializing && (doc[Initializing] = false); return doc; } |