diff --git a/components/menu/MenuItem.vue b/components/menu/MenuItem.vue index 52cee4df9..638b64be4 100644 --- a/components/menu/MenuItem.vue +++ b/components/menu/MenuItem.vue @@ -1,8 +1,7 @@ diff --git a/components/menu/demo/index.vue b/components/menu/demo/index.vue new file mode 100644 index 000000000..af35e6af9 --- /dev/null +++ b/components/menu/demo/index.vue @@ -0,0 +1,28 @@ + + diff --git a/components/menu/demo/inline-collapsed.vue b/components/menu/demo/inline-collapsed.vue index de56f381c..5737221e6 100644 --- a/components/menu/demo/inline-collapsed.vue +++ b/components/menu/demo/inline-collapsed.vue @@ -56,22 +56,13 @@ const MenuItem = Menu.Item export default { data () { return { - collapsed: true, + collapsed: false, } }, methods: { toggleCollapsed () { this.collapsed = !this.collapsed }, - con1 () { - console.log(111) - }, - con2 () { - console.log(222) - }, - con3 () { - console.log(333) - }, }, components: { Menu, diff --git a/components/menu/demo/inline.vue b/components/menu/demo/inline.vue new file mode 100644 index 000000000..bfefcda9d --- /dev/null +++ b/components/menu/demo/inline.vue @@ -0,0 +1,79 @@ + + diff --git a/components/menu/demo/sider-current.vue b/components/menu/demo/sider-current.vue new file mode 100644 index 000000000..d93ba5c3d --- /dev/null +++ b/components/menu/demo/sider-current.vue @@ -0,0 +1,70 @@ + + diff --git a/components/menu/demo/switch-mode.vue b/components/menu/demo/switch-mode.vue new file mode 100644 index 000000000..6476270e4 --- /dev/null +++ b/components/menu/demo/switch-mode.vue @@ -0,0 +1,76 @@ + + diff --git a/components/menu/demo/theme.vue b/components/menu/demo/theme.vue new file mode 100644 index 000000000..f0b66e65e --- /dev/null +++ b/components/menu/demo/theme.vue @@ -0,0 +1,77 @@ + + diff --git a/components/menu/demo/vertical.vue b/components/menu/demo/vertical.vue new file mode 100644 index 000000000..7fa24c7a0 --- /dev/null +++ b/components/menu/demo/vertical.vue @@ -0,0 +1,60 @@ + + diff --git a/components/menu/index.vue b/components/menu/index.vue index 5c792b6fa..5dc810d2e 100644 --- a/components/menu/index.vue +++ b/components/menu/index.vue @@ -37,7 +37,6 @@ export default { return { inlineCollapsed: this.getInlineCollapsed(), getInlineCollapsed: this.getInlineCollapsed, - antdMenuTheme: this.$props.theme, } }, mixins: [BaseMixin], diff --git a/components/menu/index.zh-CN.md b/components/menu/index.zh-CN.md new file mode 100644 index 000000000..d9334de2c --- /dev/null +++ b/components/menu/index.zh-CN.md @@ -0,0 +1,81 @@ +--- +category: Components +cols: 1 +type: Navigation +title: Menu +subtitle: 导航菜单 +--- + +为页面和功能提供导航的菜单列表。 + +## 何时使用 + +导航菜单是一个网站的灵魂,用户依赖导航在各个页面中进行跳转。一般分为顶部导航和侧边导航,顶部导航提供全局性的类目和功能,侧边导航提供多级结构来收纳和排列网站架构。 + +更多布局和导航的使用可以参考:[通用布局](/components/layout)。 + +## API + +```html + + 菜单项 + + 子菜单项 + + +``` + +### Menu + +| 参数 | 说明 | 类型 | 默认值 | +| --- | --- | --- | --- | +| defaultOpenKeys | 初始展开的 SubMenu 菜单项 key 数组 | | | +| defaultSelectedKeys | 初始选中的菜单项 key 数组 | string\[] | | +| forceSubMenuRender | 在子菜单展示之前就渲染进 DOM | boolean | false | +| inlineCollapsed | inline 时菜单是否收起状态 | boolean | - | +| inlineIndent | inline 模式的菜单缩进宽度 | number | 24 | +| mode | 菜单类型,现在支持垂直、水平、和内嵌模式三种 | string: `vertical` `vertical-right` `horizontal` `inline` | `vertical` | +| multiple | 是否允许多选 | boolean | false | +| openKeys(.sync) | 当前展开的 SubMenu 菜单项 key 数组 | string\[] | | +| selectable | 是否允许选中 | boolean | true | +| selectedKeys(v-model) | 当前选中的菜单项 key 数组 | string\[] | | +| subMenuCloseDelay | 用户鼠标离开子菜单后关闭延时,单位:秒 | number | 0.1 | +| subMenuOpenDelay | 用户鼠标进入子菜单后开启延时,单位:秒 | number | 0 | +| theme | 主题颜色 | string: `light` `dark` | `light` | + +### Menu事件 +| 事件名称 | 说明 | 回调参数 | +| click | 点击 MenuItem 调用此函数 | function({ item, key, keyPath }) | +| deselect | 取消选中时调用,仅在 multiple 生效 | function({ item, key, selectedKeys }) | +| openChange | SubMenu 展开/关闭的回调 | function(openKeys: string\[]) | +| select | 被选中时调用 | function({ item, key, selectedKeys }) | + +### Menu.Item + +| 参数 | 说明 | 类型 | 默认值 | +| --- | --- | --- | --- | +| disabled | 是否禁用 | boolean | false | +| key | item 的唯一标志 | string | | + +### Menu.SubMenu + +| 参数 | 说明 | 类型 | 默认值 | +| --- | --- | --- | --- | +| children | 子菜单的菜单项 | Array<MenuItem\|SubMenu> | | +| disabled | 是否禁用 | boolean | false | +| key | 唯一标志 | string | | +| title | 子菜单项值 | string\|slot | | + +### SubMenu事件 +| 事件名称 | 说明 | 回调参数 | +| titleClick | 点击子菜单标题 | ({ key, domEvent }) | + +### Menu.ItemGroup + +| 参数 | 说明 | 类型 | 默认值 | +| --- | --- | --- | --- | +| title | 分组标题 | string\|\|function|\slot | | + +### Menu.Divider + +菜单项分割线,只用在弹出菜单内。 diff --git a/components/menu/src/MenuItem.vue b/components/menu/src/MenuItem.vue index 84cbe1b49..9ef6be874 100644 --- a/components/menu/src/MenuItem.vue +++ b/components/menu/src/MenuItem.vue @@ -1,7 +1,7 @@