From 6c7787db7b451c0c18ff9a77321a0c49e1bdeddd Mon Sep 17 00:00:00 2001 From: Evan You Date: Sat, 26 Oct 2019 11:24:37 -0400 Subject: [PATCH] perf: use makeMap for reserved prop check --- packages/shared/src/index.ts | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/packages/shared/src/index.ts b/packages/shared/src/index.ts index 38b1e2920e..69a0b5bddd 100644 --- a/packages/shared/src/index.ts +++ b/packages/shared/src/index.ts @@ -1,6 +1,8 @@ +import { makeMap } from './makeMap' + +export { makeMap } export * from './patchFlags' export { isGloballyWhitelisted } from './globalsWhitelist' -export { makeMap } from './makeMap' export const EMPTY_OBJ: { readonly [key: string]: any } = __DEV__ ? Object.freeze({}) @@ -55,8 +57,12 @@ export function toRawType(value: unknown): string { export const isPlainObject = (val: unknown): val is object => toTypeString(val) === '[object Object]' -export const isReservedProp = (key: string): boolean => - key === 'key' || key === 'ref' || key.startsWith(`onVnode`) +export const isReservedProp = /*#__PURE__*/ makeMap( + 'key,ref,' + + 'onVnodeBeforeMount,onVnodeMounted,' + + 'onVnodeBeforeUpdate,onVnodeUpdated,' + + 'onVnodeBeforeUnmount,onVnodeUnmounted' +) const camelizeRE = /-(\w)/g export const camelize = (str: string): string => { -- 2.47.3