diff --git a/components/vc-notification/Notice.jsx b/components/vc-notification/Notice.jsx index 46827ffbc..aae60b4cf 100644 --- a/components/vc-notification/Notice.jsx +++ b/components/vc-notification/Notice.jsx @@ -33,7 +33,10 @@ export default { this.willDestroy = true; // beforeDestroy调用后依然会触发onMouseleave事件 }, methods: { - close() { + close(e) { + if (e) { + e.stopPropagation(); + } this.clearCloseTimer(); this.__emit('close'); }, diff --git a/components/vc-notification/demo/simple.jsx b/components/vc-notification/demo/simple.jsx index f988aa17f..d2ac5fcc9 100644 --- a/components/vc-notification/demo/simple.jsx +++ b/components/vc-notification/demo/simple.jsx @@ -92,6 +92,39 @@ function updatableFn() { }, 1000); } +let notification2 = null; +const clearPath = 'M793 242H366v-74c0-6.7-7.7-10.4-12.9' + + '-6.3l-142 112c-4.1 3.2-4.1 9.4 0 12.6l142 112c' + + '5.2 4.1 12.9 0.4 12.9-6.3v-74h415v470H175c-4.4' + + ' 0-8 3.6-8 8v60c0 4.4 3.6 8 8 8h618c35.3 0 64-' + + '28.7 64-64V306c0-35.3-28.7-64-64-64z'; +Notification.newInstance({ + closeIcon: h => { + return ( + + + + ); + }, +}, (n) => { + notification2 = n; +}); +function customCloseIconFn() { + notification2.notice({ + content: 'It is using custom close icon...', + closable: true, + duration: 0, + }); +} + export default { render() { return ( @@ -101,6 +134,9 @@ export default { +