mirror of
https://gitee.com/vant-contrib/vant.git
synced 2025-04-06 03:57:59 +08:00
[improvement] DropdownMenu: close menu when click outside
This commit is contained in:
parent
8558c931c8
commit
12941b05ea
@ -46,6 +46,7 @@ export default sfc({
|
|||||||
return (
|
return (
|
||||||
<Cell
|
<Cell
|
||||||
clickable
|
clickable
|
||||||
|
key={option.value}
|
||||||
title={option.text}
|
title={option.text}
|
||||||
titleStyle={{ color: active ? activeColor : '' }}
|
titleStyle={{ color: active ? activeColor : '' }}
|
||||||
onClick={() => {
|
onClick={() => {
|
||||||
|
@ -1,11 +1,15 @@
|
|||||||
import { use } from '../utils';
|
import { use } from '../utils';
|
||||||
import { BLUE } from '../utils/color';
|
import { BLUE } from '../utils/color';
|
||||||
import { ParentMixin } from '../mixins/relation';
|
import { ParentMixin } from '../mixins/relation';
|
||||||
|
import { ClickOutsideMixin } from '../mixins/click-outside';
|
||||||
|
|
||||||
const [sfc, bem] = use('dropdown-menu');
|
const [sfc, bem] = use('dropdown-menu');
|
||||||
|
|
||||||
export default sfc({
|
export default sfc({
|
||||||
mixins: [ParentMixin('vanDropdownMenu')],
|
mixins: [ParentMixin('vanDropdownMenu'), ClickOutsideMixin({
|
||||||
|
event: 'click',
|
||||||
|
method: 'onClickOutside'
|
||||||
|
})],
|
||||||
|
|
||||||
props: {
|
props: {
|
||||||
overlay: {
|
overlay: {
|
||||||
@ -45,6 +49,12 @@ export default sfc({
|
|||||||
item.toggle(false);
|
item.toggle(false);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
},
|
||||||
|
|
||||||
|
onClickOutside() {
|
||||||
|
this.children.forEach(item => {
|
||||||
|
item.toggle(false);
|
||||||
|
});
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user