Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.
 
 
 
 
 

20 řádky
570 B

  1. export function useMouse() {
  2. // state encapsulated and managed by the composable
  3. const x = ref(0)
  4. const y = ref(0)
  5. // a composable can update its managed state over time.
  6. function update(event) {
  7. x.value = event.pageX
  8. y.value = event.pageY
  9. }
  10. // a composable can also hook into its owner component's
  11. // lifecycle to setup and teardown side effects.
  12. onMounted(() => window.addEventListener('mousemove', update))
  13. onUnmounted(() => window.removeEventListener('mousemove', update))
  14. // expose managed state as return value
  15. return { x, y }
  16. }