mirror of
https://github.com/ArthurDanjou/ui.git
synced 2026-01-19 14:31:47 +01:00
51 lines
766 B
Markdown
51 lines
766 B
Markdown
---
|
|
github: true
|
|
---
|
|
|
|
## Usage
|
|
|
|
::component-example
|
|
#default
|
|
:context-menu-example
|
|
#code
|
|
```vue
|
|
<script setup>
|
|
const { x, y } = useMouse()
|
|
const { y: windowY } = useWindowScroll()
|
|
|
|
const isOpen = ref(false)
|
|
const virtualElement = ref({ getBoundingClientRect: () => ({}) })
|
|
|
|
function onContextMenu () {
|
|
const top = unref(y) - unref(windowY)
|
|
const left = unref(x)
|
|
|
|
virtualElement.value.getBoundingClientRect = () => ({
|
|
width: 0,
|
|
height: 0,
|
|
top,
|
|
left
|
|
})
|
|
|
|
isOpen.value = true
|
|
}
|
|
</script>
|
|
|
|
<template>
|
|
<div @contextmenu.prevent="onContextMenu">
|
|
<UContextMenu v-model="isOpen" :virtual-element="virtualElement">
|
|
<!-- Content -->
|
|
</UContextMenu>
|
|
</div>
|
|
</template>
|
|
```
|
|
::
|
|
|
|
## Props
|
|
|
|
:component-props
|
|
|
|
## Preset
|
|
|
|
:component-preset
|