dist/vue.esm.browser.js
function cloneVNode (vnode) {
  const cloned = new VNode(
    vnode.tag,
    vnode.data,
    // #7975
    // clone children array to avoid mutating original in case of cloning
    // a child.
    vnode.children && vnode.children.slice(),
    vnode.text,
    vnode.elm,
    vnode.context,
    vnode.componentOptions,
    vnode.asyncFactory
  );
  cloned.ns = vnode.ns;
  cloned.isStatic = vnode.isStatic;
  cloned.key = vnode.key;
  cloned.isComment = vnode.isComment;
  cloned.fnContext = vnode.fnContext;
  cloned.fnOptions = vnode.fnOptions;
  cloned.fnScopeId = vnode.fnScopeId;
  cloned.asyncMeta = vnode.asyncMeta;
  cloned.isCloned = true;
  return cloned
}
function cloneVNode (vnode) {
  const cloned = new VNode(
    vnode.tag,
    vnode.data,
    // #7975
    // clone children array to avoid mutating original in case of cloning
    // a child.
    vnode.children && vnode.children.slice(),
    vnode.text,
    vnode.elm,
    vnode.context,
    vnode.componentOptions,
    vnode.asyncFactory
  );
  cloned.ns = vnode.ns;
  cloned.isStatic = vnode.isStatic;
  cloned.key = vnode.key;
  cloned.isComment = vnode.isComment;
  cloned.fnContext = vnode.fnContext;
  cloned.fnOptions = vnode.fnOptions;
  cloned.fnScopeId = vnode.fnScopeId;
  cloned.asyncMeta = vnode.asyncMeta;
  cloned.isCloned = true;
  return cloned
}
function cloneVNode ( vnode ) { const cloned = new VNode ( vnode . tag , vnode . data , // #7975 // clone children array to avoid mutating original in case of cloning // a child. vnode . children && vnode . children . slice ( ) , vnode . text , vnode . elm , vnode . context , vnode . componentOptions , vnode . asyncFactory ) ; cloned . ns = vnode . ns ; cloned . isStatic = vnode . isStatic ; cloned . key = vnode . key ; cloned . isComment = vnode . isComment ; cloned . fnContext = vnode . fnContext ; cloned . fnOptions = vnode . fnOptions ; cloned . fnScopeId = vnode . fnScopeId ; cloned . asyncMeta = vnode . asyncMeta ; cloned . isCloned = true ; return cloned }
optimized shallow clone used for static nodes and slot nodes because they may be reused across multiple renders, cloning them avoids errors when DOM manipulations rely on their elm reference.
optimized shallow clone used for static nodes and slot nodes because they may be reused across multiple renders cloning them avoids errors when DOM manipulations rely on their elm reference .