Просмотр исходного кода

fix(runtime-core): clone root vnode before inheriting directives

Evan You 4 лет назад
Родитель
Сommit
d36ca4d80e
1 измененных файлов с 2 добавлено и 0 удалено
  1. 2 0
      packages/runtime-core/src/componentRenderUtils.ts

+ 2 - 0
packages/runtime-core/src/componentRenderUtils.ts

@@ -215,6 +215,8 @@ export function renderComponentRoot(
           `The directives will not function as intended.`
       )
     }
+    // clone before mutating since the root may be a hoisted vnode
+    root = cloneVNode(root)
     root.dirs = root.dirs ? root.dirs.concat(vnode.dirs) : vnode.dirs
   }
   // inherit transition data