From: Evan You Date: Thu, 20 Sep 2018 03:56:40 +0000 (-0400) Subject: fix: beforeUpdate should not be called via onTrigger X-Git-Tag: v3.0.0-alpha.0~1225 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=fc1d6e52f37b222666da49531c89672525f2bd6f;p=thirdparty%2Fvuejs%2Fcore.git fix: beforeUpdate should not be called via onTrigger --- diff --git a/packages/core/src/createRenderer.ts b/packages/core/src/createRenderer.ts index 0541d1fb5f..6ab6ab42c3 100644 --- a/packages/core/src/createRenderer.ts +++ b/packages/core/src/createRenderer.ts @@ -1206,9 +1206,8 @@ export function createRenderer(options: RendererOptions) { } }, { - scheduler: queueUpdate, - onTrigger: - instance.beforeUpdate && instance.beforeUpdate.bind(instance.$proxy) + scheduler: queueUpdate + // TODO add API for using onTrigger for component re-render debugging } ) @@ -1237,9 +1236,12 @@ export function createRenderer(options: RendererOptions) { container: RenderNode | null, isSVG: boolean ) { - // beforeUpdate is called as the onTrack hook of the instance's reactive - // runner const prevVNode = instance.$vnode + + if (instance.beforeUpdate) { + instance.beforeUpdate.call(instance.$proxy, prevVNode) + } + const nextVNode = (instance.$vnode = renderInstanceRoot(instance)) container = container || parentNode(prevVNode.el as RenderNode | RenderFragment)