diff --git a/src/core/observer/traverse.js b/src/core/observer/traverse.js index 37c71e9cf98..6b26524affc 100644 --- a/src/core/observer/traverse.js +++ b/src/core/observer/traverse.js @@ -2,6 +2,7 @@ import { _Set as Set, isObject } from '../util/index' import type { SimpleSet } from '../util/index' +import VNode from '../vdom/vnode' const seenObjects = new Set() @@ -18,7 +19,7 @@ export function traverse (val: any) { function _traverse (val: any, seen: SimpleSet) { let i, keys const isA = Array.isArray(val) - if ((!isA && !isObject(val)) || Object.isFrozen(val)) { + if ((!isA && !isObject(val)) || Object.isFrozen(val) || val instanceof VNode) { return } if (val.__ob__) {