From 4165efc8a0bc4ff047f6960b813e90f2baaff2f0 Mon Sep 17 00:00:00 2001 From: Wildan Maulana Syahidillah Date: Tue, 31 Jul 2018 08:53:44 +0700 Subject: [PATCH] fix(v-model): prevent double v-model update on functional components prevent double v-model update on functional components by not transforming model when Ctor.options.functional is true fix #8436 --- src/core/vdom/create-component.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/core/vdom/create-component.js b/src/core/vdom/create-component.js index 697afbefb22..16178ae6b9f 100644 --- a/src/core/vdom/create-component.js +++ b/src/core/vdom/create-component.js @@ -150,8 +150,9 @@ export function createComponent ( // component constructor creation resolveConstructorOptions(Ctor) - // transform component v-model data into props & events - if (isDef(data.model)) { + // transform component v-model data into props & events. + // make sure to transform model only once in functional components. + if (isDef(data.model) && !isTrue(Ctor.options.functional)) { transformModel(Ctor.options, data) }