Skip to content

Commit 6fa8351

Browse files
committed
feat: update dropdown
1 parent 7fc5124 commit 6fa8351

File tree

7 files changed

+194
-118
lines changed

7 files changed

+194
-118
lines changed

components/card/__tests__/__snapshots__/demo.test.js.snap

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -262,7 +262,7 @@ exports[`renders ./components/card/demo/tabs.md correctly 1`] = `
262262
<div class="ant-card-extra"><a href="#">More</a></div>
263263
</div>
264264
<div class="ant-tabs ant-tabs-top ant-tabs-large ant-tabs-line ant-card-head-tabs no-flex">
265-
<div role="tablist" tabindex="0" class="ant-tabs-bar">
265+
<div role="tablist" tabindex="0" class="ant-tabs-bar ant-tabs-top-bar ant-tabs-large-bar">
266266
<div class="ant-tabs-nav-container"><span unselectable="unselectable" class="ant-tabs-tab-prev ant-tabs-tab-btn-disabled"><span class="ant-tabs-tab-prev-icon"><i class="ant-tabs-tab-prev-icon-target anticon anticon-left"><svg viewBox="64 64 896 896" data-icon="left" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M724 218.3V141c0-6.7-7.7-10.4-12.9-6.3L260.3 486.8a31.86 31.86 0 0 0 0 50.3l450.8 352.1c5.3 4.1 12.9.4 12.9-6.3v-77.3c0-4.9-2.3-9.6-6.1-12.6l-360-281 360-281.1c3.8-3 6.1-7.7 6.1-12.6z"></path></svg></i></span></span><span unselectable="unselectable" class="ant-tabs-tab-next ant-tabs-tab-btn-disabled"><span class="ant-tabs-tab-next-icon"><i class="ant-tabs-tab-next-icon-target anticon anticon-right"><svg viewBox="64 64 896 896" data-icon="right" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M765.7 486.8L314.9 134.7A7.97 7.97 0 0 0 302 141v77.3c0 4.9 2.3 9.6 6.1 12.6l360 281.1-360 281.1c-3.9 3-6.1 7.7-6.1 12.6V883c0 6.7 7.7 10.4 12.9 6.3l450.8-352.1a31.96 31.96 0 0 0 0-50.4z"></path></svg></i></span></span>
267267
<div class="ant-tabs-nav-wrap">
268268
<div class="ant-tabs-nav-scroll">
@@ -278,10 +278,15 @@ exports[`renders ./components/card/demo/tabs.md correctly 1`] = `
278278
</div>
279279
</div>
280280
</div>
281-
<div class="ant-tabs-content ant-tabs-content-animated" style="margin-left: 0%;">
282-
<div role="tabpanel" aria-hidden="false" class="ant-tabs-tabpane ant-tabs-tabpane-active"></div>
281+
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden;"></div>
282+
<div class="ant-tabs-content ant-tabs-content-animated ant-tabs-top-content" style="margin-left: 0%;">
283+
<div role="tabpanel" aria-hidden="false" class="ant-tabs-tabpane ant-tabs-tabpane-active">
284+
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden;"></div>
285+
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden;"></div>
286+
</div>
283287
<div role="tabpanel" aria-hidden="true" class="ant-tabs-tabpane ant-tabs-tabpane-inactive"></div>
284288
</div>
289+
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden;"></div>
285290
</div>
286291
</div>
287292
<div class="ant-card-body">
@@ -292,7 +297,7 @@ exports[`renders ./components/card/demo/tabs.md correctly 1`] = `
292297
<div class="ant-card-head">
293298
<div class="ant-card-head-wrapper"></div>
294299
<div class="ant-tabs ant-tabs-top ant-tabs-large ant-tabs-line ant-card-head-tabs no-flex">
295-
<div role="tablist" tabindex="0" class="ant-tabs-bar">
300+
<div role="tablist" tabindex="0" class="ant-tabs-bar ant-tabs-top-bar ant-tabs-large-bar">
296301
<div class="ant-tabs-nav-container"><span unselectable="unselectable" class="ant-tabs-tab-prev ant-tabs-tab-btn-disabled"><span class="ant-tabs-tab-prev-icon"><i class="ant-tabs-tab-prev-icon-target anticon anticon-left"><svg viewBox="64 64 896 896" data-icon="left" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M724 218.3V141c0-6.7-7.7-10.4-12.9-6.3L260.3 486.8a31.86 31.86 0 0 0 0 50.3l450.8 352.1c5.3 4.1 12.9.4 12.9-6.3v-77.3c0-4.9-2.3-9.6-6.1-12.6l-360-281 360-281.1c3.8-3 6.1-7.7 6.1-12.6z"></path></svg></i></span></span><span unselectable="unselectable" class="ant-tabs-tab-next ant-tabs-tab-btn-disabled"><span class="ant-tabs-tab-next-icon"><i class="ant-tabs-tab-next-icon-target anticon anticon-right"><svg viewBox="64 64 896 896" data-icon="right" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M765.7 486.8L314.9 134.7A7.97 7.97 0 0 0 302 141v77.3c0 4.9 2.3 9.6 6.1 12.6l360 281.1-360 281.1c-3.9 3-6.1 7.7-6.1 12.6V883c0 6.7 7.7 10.4 12.9 6.3l450.8-352.1a31.96 31.96 0 0 0 0-50.4z"></path></svg></i></span></span>
297302
<div class="ant-tabs-nav-wrap">
298303
<div class="ant-tabs-nav-scroll">
@@ -308,11 +313,16 @@ exports[`renders ./components/card/demo/tabs.md correctly 1`] = `
308313
</div>
309314
</div>
310315
</div>
311-
<div class="ant-tabs-content ant-tabs-content-animated" style="margin-left: -100%;">
316+
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden;"></div>
317+
<div class="ant-tabs-content ant-tabs-content-animated ant-tabs-top-content" style="margin-left: -100%;">
312318
<div role="tabpanel" aria-hidden="true" class="ant-tabs-tabpane ant-tabs-tabpane-inactive"></div>
313-
<div role="tabpanel" aria-hidden="false" class="ant-tabs-tabpane ant-tabs-tabpane-active"></div>
319+
<div role="tabpanel" aria-hidden="false" class="ant-tabs-tabpane ant-tabs-tabpane-active">
320+
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden;"></div>
321+
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden;"></div>
322+
</div>
314323
<div role="tabpanel" aria-hidden="true" class="ant-tabs-tabpane ant-tabs-tabpane-inactive"></div>
315324
</div>
325+
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden;"></div>
316326
</div>
317327
</div>
318328
<div class="ant-card-body">

components/dropdown/demo/context-menu.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
<cn>
22
#### 右键菜单
3-
默认是移入触发菜单,可以鼠标右键触发
3+
默认是移入触发菜单,可以点击鼠标右键触发
44
</cn>
55

66
<us>
77
#### Context Menu
8-
The default trigger mode is `hover`, you can change it to `right click`.
8+
The default trigger mode is `hover`, you can change it to `contextMenu`.
99
</us>
1010

1111
```html

components/dropdown/dropdown-button.jsx

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,19 @@
11

22
import Button from '../button'
3+
import buttonTypes from '../button/buttonTypes'
34
import { ButtonGroupProps } from '../button/button-group'
45
import Dropdown from './dropdown'
56
import PropTypes from '../_util/vue-types'
67
import { hasProp, getComponentFromProp } from '../_util/props-util'
78
import getDropdownProps from './getDropdownProps'
9+
const ButtonTypesProps = buttonTypes()
810
const DropdownProps = getDropdownProps()
911
const ButtonGroup = Button.Group
1012
const DropdownButtonProps = {
1113
...ButtonGroupProps,
1214
...DropdownProps,
1315
type: PropTypes.oneOf(['primary', 'ghost', 'dashed', 'danger', 'default']).def('default'),
16+
htmlType: ButtonTypesProps.htmlType,
1417
disabled: PropTypes.bool,
1518
prefixCls: PropTypes.string.def('ant-dropdown-button'),
1619
placement: DropdownProps.placement.def('bottomRight'),
@@ -33,7 +36,7 @@ export default {
3336
},
3437
render () {
3538
const {
36-
type, disabled,
39+
type, disabled, htmlType,
3740
prefixCls, trigger, align,
3841
visible, placement, getPopupContainer,
3942
...restProps
@@ -64,6 +67,7 @@ export default {
6467
type={type}
6568
disabled={disabled}
6669
onClick={this.onClick}
70+
htmlType={htmlType}
6771
>
6872
{this.$slots.default}
6973
</Button>

components/dropdown/dropdown.jsx

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@ import PropTypes from '../_util/vue-types'
55
import { cloneElement } from '../_util/vnode'
66
import { getOptionProps, getPropsData } from '../_util/props-util'
77
import getDropdownProps from './getDropdownProps'
8+
import Icon from '../icon'
9+
810
const DropdownProps = getDropdownProps()
911
const Dropdown = {
1012
name: 'ADropdown',
@@ -43,11 +45,19 @@ const Dropdown = {
4345
// menu should be focusable in dropdown defaultly
4446
const overlayProps = overlay && getPropsData(overlay)
4547
const { selectable = false, focusable = true } = overlayProps || {}
48+
49+
const expandIcon = (
50+
<span class={`${prefixCls}-menu-submenu-arrow`}>
51+
<Icon type='right' class={`${prefixCls}-menu-submenu-arrow-icon`} />
52+
</span>
53+
)
54+
4655
const fixedModeOverlay = overlay && overlay.componentOptions ? cloneElement(overlay, {
4756
props: {
4857
mode: 'vertical',
4958
selectable,
5059
focusable,
60+
expandIcon,
5161
},
5262
}) : overlay
5363
const triggerActions = disabled ? [] : trigger

0 commit comments

Comments
 (0)