vue-expert
Vue Expert — Gotchas & Decisions
Use Context7 for full Vue/Nuxt docs.
Key Decisions
decisions[4]{choice,use_when}:
ref vs reactive,"ref for primitives + single values. reactive for objects. Never destructure reactive — loses reactivity"
Pinia vs provide/inject,"Pinia for shared app state. provide/inject for component tree scoping"
Options vs Composition,"Always Composition API with <script setup>. Options only for legacy"
Composables vs mixins,"Always composables (use* functions). Mixins are deprecated pattern"
Gotchas
- Destructuring
reactive()object loses reactivity — usetoRefs()or stick withref() ref()auto-unwraps in template but NOT in JS — use.valuein scriptwatchvswatchEffect: watch needs explicit source, watchEffect auto-tracks. Use watch for old/new comparisoncomputedis readonly — don't assign to it. Use writable computed with get/set if needed<script setup>auto-exposes to template but NOT to parent$refs— usedefineExpose()- Props are readonly — never mutate. Emit event to parent instead
v-for+v-ifon same element:v-ifhas higher priority in Vue 3 (opposite of Vue 2)- Pinia: use
storeToRefs()for destructuring store state/getters. Actions don't need it nextTick()needed after state change to access updated DOM
More from nguyenthienthanh/aura-frog
stitch-design
Generate UI designs using Google Stitch AI with optimized prompts
37angular-expert
Angular 17+ gotchas and decision criteria. Covers signals vs observables, standalone patterns, and common pitfalls Claude gets wrong.
31flutter-expert
Flutter/Dart mobile expert. PROACTIVELY use when working with Flutter, Dart, mobile apps. Triggers: flutter, dart, widget, bloc, riverpod
16dev-expert
Development patterns for React, Vue, Laravel, Next.js, React Native - state management, forms, API integration
13react-native-expert
React Native best practices expert. PROACTIVELY use when working with React Native, mobile apps, Expo. Triggers: react-native, expo, mobile, iOS, Android, NativeWind
13visual-pixel-perfect
Pixel-perfect visual testing with auto-fix loop. Implement → Render → Snapshot → Compare → Fix until pass.
13