| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- <script setup lang="ts">
- import { Page } from '@vben/common-ui';
- import { VbenContextMenu } from '@vben-core/shadcn-ui';
- import { Button, Card, message } from 'antdv-next';
- const needHidden = (role: string) => {
- return role === 'user';
- };
- const contextMenus = () => {
- return [
- {
- text: '刷新',
- key: 'refresh',
- handler: (data: any) => {
- message.success('刷新成功', data);
- },
- hidden: needHidden('admin'),
- },
- {
- text: '关闭当前',
- key: 'close-current',
- handler: (data: any) => {
- message.success('关闭当前', data);
- },
- hidden: needHidden('user'),
- },
- {
- text: '关闭其他',
- key: 'close-other',
- handler: (data: any) => {
- message.success('关闭其他', data);
- },
- },
- {
- text: '关闭所有',
- key: 'close-all',
- handler: (data: any) => {
- message.success('关闭所有', data);
- },
- },
- ];
- };
- </script>
- <template>
- <Page title="Context Menu 上下文菜单">
- <Card title="基本使用">
- <div>一共四个菜单(刷新、关闭当前、关闭其他、关闭所有)</div>
- <br />
- <br />
- <VbenContextMenu :menus="contextMenus" :modal="true" item-class="pr-6">
- <Button> 右键点击我打开上下文菜单(有隐藏项) </Button>
- </VbenContextMenu>
- </Card>
- </Page>
- </template>
|