59 lines
1.2 KiB
Vue
59 lines
1.2 KiB
Vue
<docs>
|
||
---
|
||
order: 4
|
||
title:
|
||
zh-CN: 触发事件
|
||
en-US: Click event
|
||
---
|
||
|
||
## zh-CN
|
||
|
||
点击菜单项后会触发事件,用户可以通过相应的菜单项 key 进行不同的操作。
|
||
|
||
## en-US
|
||
|
||
An event will be triggered when you click menu items, in which you can make different operations according to item's key.
|
||
|
||
</docs>
|
||
|
||
<template>
|
||
<a-dropdown>
|
||
<a class="ant-dropdown-link" @click.prevent>
|
||
Hover me, Click menu item
|
||
<DownOutlined />
|
||
</a>
|
||
<template #overlay>
|
||
<a-menu @click="onClick">
|
||
<a-menu-item key="1">1st menu item</a-menu-item>
|
||
<a-menu-item key="2">2nd menu item</a-menu-item>
|
||
<a-menu-item key="3">3rd menu item</a-menu-item>
|
||
</a-menu>
|
||
</template>
|
||
</a-dropdown>
|
||
</template>
|
||
<script lang="ts">
|
||
import { defineComponent } from 'vue';
|
||
import { DownOutlined } from '@ant-design/icons-vue';
|
||
|
||
interface MenuInfo {
|
||
key: string;
|
||
keyPath: string[];
|
||
item: any;
|
||
domEvent: MouseEvent;
|
||
}
|
||
|
||
export default defineComponent({
|
||
components: {
|
||
DownOutlined,
|
||
},
|
||
setup() {
|
||
const onClick = ({ key }: MenuInfo) => {
|
||
console.log(`Click on item ${key}`);
|
||
};
|
||
return {
|
||
onClick,
|
||
};
|
||
},
|
||
});
|
||
</script>
|