فهرست منبع

fix: multiple merged vnode hooks not invoked properly

fix #6076
Evan You 9 سال پیش
والد
کامیت
91deb4fd91
1فایلهای تغییر یافته به همراه3 افزوده شده و 2 حذف شده
  1. 3 2
      src/core/vdom/helpers/update-listeners.js

+ 3 - 2
src/core/vdom/helpers/update-listeners.js

@@ -27,8 +27,9 @@ export function createFnInvoker (fns: Function | Array<Function>): Function {
   function invoker () {
   function invoker () {
     const fns = invoker.fns
     const fns = invoker.fns
     if (Array.isArray(fns)) {
     if (Array.isArray(fns)) {
-      for (let i = 0; i < fns.length; i++) {
-        fns[i].apply(null, arguments)
+      const cloned = fns.slice()
+      for (let i = 0; i < cloned.length; i++) {
+        cloned[i].apply(null, arguments)
       }
       }
     } else {
     } else {
       // return handler return value for single handlers
       // return handler return value for single handlers