From 93e0a95c1d384765090890c2103dfe8c8af2806d Mon Sep 17 00:00:00 2001 From: neverland Date: Wed, 1 Sep 2021 16:45:43 +0800 Subject: [PATCH] feat(Popover): add show-arrow prop (#9372) --- src/popover/Popover.tsx | 6 +++++- src/popover/README.md | 1 + src/popover/README.zh-CN.md | 1 + src/popover/test/index.spec.tsx | 12 ++++++++++++ 4 files changed, 19 insertions(+), 1 deletion(-) diff --git a/src/popover/Popover.tsx b/src/popover/Popover.tsx index 28a4d4a01..eb89b3f5b 100644 --- a/src/popover/Popover.tsx +++ b/src/popover/Popover.tsx @@ -102,6 +102,10 @@ export default defineComponent({ type: [String, Object] as PropType, default: 'body', }, + showArrow: { + type: Boolean, + default: true, + }, }, emits: ['select', 'touchstart', 'update:show'], @@ -234,7 +238,7 @@ export default defineComponent({ {...pick(props, popupProps)} {...{ 'onUpdate:show': updateShow }} > -
+ {props.showArrow &&
} diff --git a/src/popover/README.md b/src/popover/README.md index 6ebf17f4e..a9a8d4ea9 100644 --- a/src/popover/README.md +++ b/src/popover/README.md @@ -220,6 +220,7 @@ export default { | overlay | Whether to show overlay | _boolean_ | `false` | | overlay-class `v3.0.10` | Custom overlay class | _string \| Array \| object_ | - | | overlay-style `v3.0.10` | Custom overlay style | _object_ | - | +| show-arrow `v3.2.2` | Whether to show arrow | _boolean_ | `true` | | close-on-click-action | Whether to close when clicking action | _boolean_ | `true` | | close-on-click-outside | Whether to close when clicking outside | _boolean_ | `true` | | close-on-click-overlay `v3.0.10` | Whether to close when clicking overlay | _boolean_ | `true` | diff --git a/src/popover/README.zh-CN.md b/src/popover/README.zh-CN.md index 31f90a8e5..dfd8332a8 100644 --- a/src/popover/README.zh-CN.md +++ b/src/popover/README.zh-CN.md @@ -230,6 +230,7 @@ export default { | overlay | 是否显示遮罩层 | _boolean_ | `false` | | overlay-class `v3.0.10` | 自定义遮罩层类名 | _string \| Array \| object_ | - | | overlay-style `v3.0.10` | 自定义遮罩层样式 | _object_ | - | +| show-arrow `v3.2.2` | 是否展示小箭头 | _boolean_ | `true` | | close-on-click-action | 是否在点击选项后关闭 | _boolean_ | `true` | | close-on-click-outside | 是否在点击外部元素后关闭菜单 | _boolean_ | `true` | | close-on-click-overlay `v3.0.10` | 是否在点击遮罩层后关闭菜单 | _boolean_ | `true` | diff --git a/src/popover/test/index.spec.tsx b/src/popover/test/index.spec.tsx index 19c8de91a..2a41f1b54 100644 --- a/src/popover/test/index.spec.tsx +++ b/src/popover/test/index.spec.tsx @@ -200,3 +200,15 @@ test('should change icon class prefix when using icon-prefix prop', () => { expect(wrapper.html()).toMatchSnapshot(); }); + +test('should allow to hide arrow', () => { + const wrapper = mount(Popover, { + props: { + show: true, + teleport: null, + showArrow: false, + }, + }); + + expect(wrapper.find('.van-popover__arrow').exists()).toBeFalsy(); +});