diff --git a/components/_util/vnode.js b/components/_util/vnode.js index 3919d75d4..2df7e56b8 100644 --- a/components/_util/vnode.js +++ b/components/_util/vnode.js @@ -46,7 +46,7 @@ export function cloneVNodes (vnodes, deep) { export function cloneElement (n, nodeProps, clone) { const node = clone ? cloneVNode(n, true) : n - const { props = {}, key, on = {}} = nodeProps + const { props = {}, key, on = {}, listeners = {}} = nodeProps const data = node.data || {} const { style = data.style, class: cls = data.class, @@ -58,10 +58,9 @@ export function cloneElement (n, nodeProps, clone) { node.componentOptions.propsData = node.componentOptions.propsData || {} node.componentOptions.listeners = node.componentOptions.listeners || {} node.componentOptions.propsData = { ...node.componentOptions.propsData, ...props } - node.componentOptions.listeners = { ...node.componentOptions.listeners, ...on } - } else { - node.data.on = { ...(node.data.on || {}), ...on } + node.componentOptions.listeners = { ...node.componentOptions.listeners, ...listeners } } + node.data.on = { ...(node.data.on || {}), ...on } if (key !== undefined) { node.key = key diff --git a/components/button/demo/index.vue b/components/button/demo/index.vue index 4937897eb..ef9369aa6 100644 --- a/components/button/demo/index.vue +++ b/components/button/demo/index.vue @@ -25,7 +25,7 @@ export default { } return (
- + @@ -39,9 +39,7 @@ export default { - +
) diff --git a/components/icon/demo/index.vue b/components/icon/demo/index.vue new file mode 100644 index 000000000..4b80ef443 --- /dev/null +++ b/components/icon/demo/index.vue @@ -0,0 +1,60 @@ + diff --git a/components/icon/icon.vue b/components/icon/icon.vue index 5526a4563..f3fedc8ec 100644 --- a/components/icon/icon.vue +++ b/components/icon/icon.vue @@ -1,6 +1,3 @@ - diff --git a/examples/components/IconSet/index.vue b/examples/components/IconSet/index.vue new file mode 100644 index 000000000..61109f506 --- /dev/null +++ b/examples/components/IconSet/index.vue @@ -0,0 +1,40 @@ + diff --git a/examples/components/api.vue b/examples/components/api.vue index a464abf9c..e9d1e3f98 100644 --- a/examples/components/api.vue +++ b/examples/components/api.vue @@ -1,7 +1,7 @@ diff --git a/examples/components/md.vue b/examples/components/md.vue index 69f224258..daca17574 100644 --- a/examples/components/md.vue +++ b/examples/components/md.vue @@ -1,5 +1,5 @@