Performance: Accessing the native event object
MEDIUM IMPACT
This affects input responsiveness and interaction speed by controlling how event data is accessed and handled in Vue components.
<template> <button @click="handleClick">Click me</button> </template> <script setup> function handleClick(event) { event.preventDefault(); doSomething(); } </script>
<template>
<button @click="$event.preventDefault(); doSomething()">Click me</button>
</template>| Pattern | DOM Operations | Reflows | Paint Cost | Verdict |
|---|---|---|---|---|
| Inline event handler with $event | No extra DOM nodes | 0 | 0 | [!] OK |
| Named method handling native event | No extra DOM nodes | 0 | 0 | [OK] Good |
| .native modifier on custom component | Adds extra event listener | 0 | 0 | [X] Bad |
| Emitting event from child component | No extra event listeners | 0 | 0 | [OK] Good |