第一次提交
This commit is contained in:
85
jeecgboot-vue3/src/views/demo/feat/context-menu/index.vue
Normal file
85
jeecgboot-vue3/src/views/demo/feat/context-menu/index.vue
Normal file
@@ -0,0 +1,85 @@
|
||||
<template>
|
||||
<PageWrapper title="右键菜单示例">
|
||||
<CollapseContainer title="Simple">
|
||||
<a-button type="primary" @contextmenu="handleContext"> Right Click on me </a-button>
|
||||
</CollapseContainer>
|
||||
|
||||
<CollapseContainer title="Multiple" class="mt-4">
|
||||
<a-button type="primary" @contextmenu="handleMultipleContext"> Right Click on me </a-button>
|
||||
</CollapseContainer>
|
||||
</PageWrapper>
|
||||
</template>
|
||||
<script lang="ts">
|
||||
import { defineComponent } from 'vue';
|
||||
import { useContextMenu } from '/@/hooks/web/useContextMenu';
|
||||
import { CollapseContainer } from '/@/components/Container';
|
||||
import { useMessage } from '/@/hooks/web/useMessage';
|
||||
import { PageWrapper } from '/@/components/Page';
|
||||
|
||||
export default defineComponent({
|
||||
components: { CollapseContainer, PageWrapper },
|
||||
setup() {
|
||||
const [createContextMenu] = useContextMenu();
|
||||
const { createMessage } = useMessage();
|
||||
function handleContext(e: MouseEvent) {
|
||||
createContextMenu({
|
||||
event: e,
|
||||
items: [
|
||||
{
|
||||
label: 'New',
|
||||
icon: 'bi:plus',
|
||||
handler: () => {
|
||||
createMessage.success('click new');
|
||||
},
|
||||
},
|
||||
{
|
||||
label: 'Open',
|
||||
icon: 'bx:bxs-folder-open',
|
||||
handler: () => {
|
||||
createMessage.success('click open');
|
||||
},
|
||||
},
|
||||
],
|
||||
});
|
||||
}
|
||||
|
||||
function handleMultipleContext(e: MouseEvent) {
|
||||
createContextMenu({
|
||||
event: e,
|
||||
items: [
|
||||
{
|
||||
label: 'New',
|
||||
icon: 'bi:plus',
|
||||
|
||||
children: [
|
||||
{
|
||||
label: 'New1-1',
|
||||
icon: 'bi:plus',
|
||||
divider: true,
|
||||
children: [
|
||||
{
|
||||
label: 'New1-1-1',
|
||||
handler: () => {
|
||||
createMessage.success('click new');
|
||||
},
|
||||
},
|
||||
{
|
||||
label: 'New1-2-1',
|
||||
disabled: true,
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
label: 'New1-2',
|
||||
icon: 'bi:plus',
|
||||
},
|
||||
],
|
||||
},
|
||||
],
|
||||
});
|
||||
}
|
||||
|
||||
return { handleContext, handleMultipleContext };
|
||||
},
|
||||
});
|
||||
</script>
|
||||
Reference in New Issue
Block a user