Skip to content

Commit 32971d8

Browse files
committed
fix v-on patching for cloned slot nodes (fix vuejs#3556)
1 parent 8c427f7 commit 32971d8

File tree

1 file changed

+9
-7
lines changed

1 file changed

+9
-7
lines changed

src/core/vdom/helpers.js

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -104,13 +104,15 @@ export function updateListeners (
104104
}
105105
add(event, cur.invoker, capture)
106106
}
107-
} else if (Array.isArray(old)) {
108-
old.length = cur.length
109-
for (let i = 0; i < old.length; i++) old[i] = cur[i]
110-
on[name] = old
111-
} else {
112-
old.fn = cur
113-
on[name] = old
107+
} else if (cur !== old) {
108+
if (Array.isArray(old)) {
109+
old.length = cur.length
110+
for (let i = 0; i < old.length; i++) old[i] = cur[i]
111+
on[name] = old
112+
} else {
113+
old.fn = cur
114+
on[name] = old
115+
}
114116
}
115117
}
116118
for (name in oldOn) {

0 commit comments

Comments
 (0)