diff options
author | yunahi <60233430+yunahi@users.noreply.github.com> | 2020-07-28 01:53:21 +0900 |
---|---|---|
committer | yunahi <60233430+yunahi@users.noreply.github.com> | 2020-07-28 01:53:21 +0900 |
commit | e8caa12dc736ef66741b5652425b0cb8b0a5eb16 (patch) | |
tree | afd47f6b46d1d9c1d814650b2590b738cd36c495 /src/fields/Schema.ts | |
parent | f3a331573be09115f9a92b8e927081f8f743c478 (diff) | |
parent | f869c7a75eb6a2f6e6301aa76c57e383b41d3fea (diff) |
merge fix
Diffstat (limited to 'src/fields/Schema.ts')
-rw-r--r-- | src/fields/Schema.ts | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/fields/Schema.ts b/src/fields/Schema.ts index 98ef3e087..23ac50f74 100644 --- a/src/fields/Schema.ts +++ b/src/fields/Schema.ts @@ -31,7 +31,7 @@ export function makeInterface<T extends Interface[]>(...schemas: T): InterfaceFu } const proto = new Proxy({}, { get(target: any, prop, receiver) { - const field = receiver.doc[prop]; + const field = receiver.doc?.[prop]; if (prop in schema) { const desc = prop === "proto" ? Doc : (schema as any)[prop]; // bcz: proto doesn't appear in schemas ... maybe it should? if (typeof desc === "object" && "defaultVal" in desc && "type" in desc) {//defaultSpec @@ -52,7 +52,7 @@ export function makeInterface<T extends Interface[]>(...schemas: T): InterfaceFu return field; }, set(target: any, prop, value, receiver) { - receiver.doc[prop] = value; + receiver.doc && (receiver.doc[prop] = value); // receiver.doc may be undefined as the result of a change in ACLs return true; } }); |