basic.vue 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. <template>
  2. <div>
  3. <div class="mb-2">基础用法</div>
  4. <div v-contextmenu:contextmenu class="wrapper">
  5. <code>右键点击此区域</code>
  6. </div>
  7. <v-contextmenu ref="contextmenu">
  8. <v-contextmenu-item>GitHub</v-contextmenu-item>
  9. <v-contextmenu-item>GitLab</v-contextmenu-item>
  10. <v-contextmenu-divider />
  11. <v-contextmenu-submenu title="蔬菜菜">
  12. <v-contextmenu-item>土豆</v-contextmenu-item>
  13. <v-contextmenu-submenu title="青菜">
  14. <v-contextmenu-item>小油菜</v-contextmenu-item>
  15. <v-contextmenu-item>空心菜</v-contextmenu-item>
  16. </v-contextmenu-submenu>
  17. <v-contextmenu-item>黄瓜</v-contextmenu-item>
  18. </v-contextmenu-submenu>
  19. <v-contextmenu-item disabled>菠萝蜜</v-contextmenu-item>
  20. <v-contextmenu-divider />
  21. <v-contextmenu-item>哈密瓜</v-contextmenu-item>
  22. </v-contextmenu>
  23. </div>
  24. </template>
  25. <script lang="ts">
  26. import { defineComponent } from "vue";
  27. import {
  28. directive,
  29. Contextmenu,
  30. ContextmenuItem,
  31. ContextmenuDivider,
  32. ContextmenuSubmenu,
  33. ContextmenuGroup
  34. } from "v-contextmenu";
  35. export default defineComponent({
  36. name: "ExampleSimple",
  37. components: {
  38. [Contextmenu.name]: Contextmenu,
  39. [ContextmenuItem.name]: ContextmenuItem,
  40. [ContextmenuDivider.name]: ContextmenuDivider,
  41. [ContextmenuSubmenu.name]: ContextmenuSubmenu,
  42. [ContextmenuGroup.name]: ContextmenuGroup
  43. },
  44. directives: {
  45. contextmenu: directive
  46. }
  47. });
  48. </script>
  49. <style scoped>
  50. .wrapper {
  51. display: flex;
  52. align-items: center;
  53. justify-content: center;
  54. width: 300px;
  55. height: 200px;
  56. background-color: rgb(90 167 164 / 20%);
  57. border: 3px dashed rgb(90 167 164 / 90%);
  58. border-radius: 8px;
  59. }
  60. </style>