diff --git a/src/calendar/README.md b/src/calendar/README.md index af0d30730..f621646c8 100644 --- a/src/calendar/README.md +++ b/src/calendar/README.md @@ -251,6 +251,8 @@ Set `poppable` to `false`, the calendar will be displayed directly on the page i |------|------|------| | select | Triggered when select date | *value: Date \| Date[]* | | confirm | Triggered after date selection is complete,if `show-confirm` is` true`, it is triggered after clicking the confirm button | *value: Date \| Date[]* | +| close `v2.5.2` | Triggered when close Calendar Popup | - | +| closed `v2.5.2` | Triggered when closed Calendar Popup | - | ### Slots diff --git a/src/calendar/README.zh-CN.md b/src/calendar/README.zh-CN.md index b9cc1079c..d65058d02 100644 --- a/src/calendar/README.zh-CN.md +++ b/src/calendar/README.zh-CN.md @@ -253,6 +253,8 @@ export default { |------|------|------| | select | 点击任意日期时触发 | *value: Date \| Date[]* | | confirm | 日期选择完成后触发,若`show-confirm`为`true`,则点击确认按钮后触发 | *value: Date \| Date[]* | +| close `v2.5.2` | 关闭弹出层时触发 | - | +| closed `v2.5.2` | 关闭弹出层且动画结束后触发 | - | ### Slots diff --git a/src/calendar/index.js b/src/calendar/index.js index 864309d33..789557f5d 100644 --- a/src/calendar/index.js +++ b/src/calendar/index.js @@ -373,6 +373,8 @@ export default createComponent({ render() { if (this.poppable) { + const createListener = name => () => this.$emit(name); + return ( {this.genCalendar()} diff --git a/src/calendar/test/index.spec.js b/src/calendar/test/index.spec.js index e3669fbad..0799e95e4 100644 --- a/src/calendar/test/index.spec.js +++ b/src/calendar/test/index.spec.js @@ -450,3 +450,14 @@ test('max-range prop', async () => { expect(wrapper.emitted('confirm')).toBeFalsy(); }); + +test('close event', () => { + const wrapper = mount(Calendar, { + propsData: { + value: true, + }, + }); + + wrapper.setProps({ value: false }); + expect(wrapper.emitted('close')).toBeTruthy(); +});