From 8fff243d4321ccb79d9c66e686c1ef0504364d48 Mon Sep 17 00:00:00 2001 From: unadlib Date: Sun, 26 Mar 2023 20:02:05 +0800 Subject: [PATCH] refactor(current): update --- src/current.ts | 6 +++++- test/immer/base.test.ts | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/current.ts b/src/current.ts index 033d3dd..3a84377 100644 --- a/src/current.ts +++ b/src/current.ts @@ -20,7 +20,11 @@ export function handleReturnValue( forEach(value, (key, item, source) => { const proxyDraft = getProxyDraft(item); // just handle the draft which is created by the same rootDraft - if (proxyDraft && proxyDraft?.finalities === rootDraft?.finalities) { + if ( + proxyDraft && + rootDraft && + proxyDraft.finalities === rootDraft.finalities + ) { isContainDraft = true; if (__DEV__ && warning) { console.warn( diff --git a/test/immer/base.test.ts b/test/immer/base.test.ts index 6075d3c..be7419d 100644 --- a/test/immer/base.test.ts +++ b/test/immer/base.test.ts @@ -1522,7 +1522,7 @@ function runBaseTest( // Modified parent test parent.c = 1; - expect(produce({}, () => [parent.b])[0]).toBe(parent.b); + expect(produce(null, () => [parent.b])[0]).toBe(parent.b); parent.b.x; // Ensure proxy not revoked. }); });