Browse Source

refactor: skip destructuring when use with (#425)

Chester 6 years ago
parent
commit
2d5f9b58ac
1 changed files with 4 additions and 4 deletions
  1. 4 4
      packages/runtime-core/src/componentProxy.ts

+ 4 - 4
packages/runtime-core/src/componentProxy.ts

@@ -65,6 +65,10 @@ const enum AccessTypes {
 
 export const PublicInstanceProxyHandlers: ProxyHandler<any> = {
   get(target: ComponentInternalInstance, key: string) {
+    // fast path for unscopables when using `with` block
+    if (__RUNTIME_COMPILE__ && (key as any) === Symbol.unscopables) {
+      return
+    }
     const {
       renderContext,
       data,
@@ -74,10 +78,6 @@ export const PublicInstanceProxyHandlers: ProxyHandler<any> = {
       type,
       sink
     } = target
-    // fast path for unscopables when using `with` block
-    if (__RUNTIME_COMPILE__ && (key as any) === Symbol.unscopables) {
-      return
-    }
     // This getter gets called for every property access on the render context
     // during render and is a major hotspot. The most expensive part of this
     // is the multiple hasOwn() calls. It's much faster to do a simple property