Las aplicaciones Vue 3 encuentran errores de runtime, mensajes de advertencia, fallos asíncronos y problemas de hidratación SSR que son difíciles de depurar. Esta habilidad proporciona guías completas de depuración y soluciones para más de 100 problemas comunes de desarrollo de Vue 3.
تنزيل ZIP المهارة
رفع في Claude
اذهب إلى Settings → Capabilities → Skills → Upload skill
فعّل وابدأ الاستخدام
اختبرها
استخدام "vue-debug-guides". Why is my computed property not updating?
النتيجة المتوقعة:
This is likely a computed property dependency issue. Computed properties in Vue 3 only track reactive dependencies accessed during their getter function. If you are destructuring a reactive object or accessing nested properties after a conditional, the computed may not update. See the 'computed-conditional-dependencies' guide for solutions.
استخدام "vue-debug-guides". How do I fix hydration mismatch in Vue SSR?
النتيجة المتوقعة:
Hydration mismatches occur when server and client render different content. Common causes include: 1) Using browser-only APIs like localStorage or window, 2) Random values generated during render, 3) CSS causing layout differences. Use onMounted for browser APIs, seed random generators, and use ClientOnly components for dynamic content.
استخدام "vue-debug-guides". Why are my template refs undefined?
النتيجة المتوقعة:
Template refs are only available after the component mounts. If you try to access them in setup(), they will be undefined. Use onMounted lifecycle hook or watchEffect with flush: 'post' to ensure refs are populated. Also check if the element is conditionally rendered with v-if - refs to v-if elements will be null when the condition is false.
التدقيق الأمني
آمنThis skill contains Vue.js debugging guides as markdown documentation. Static analysis flagged patterns in code examples within documentation. All findings are FALSE POSITIVES - backticks are markdown code formatting, URLs are documentation examples, and code snippets showing problematic patterns are educational content, not vulnerabilities. Safe for publication.
درجة الجودة
ماذا يمكنك بناءه
Depurar Problemas de Reactividad
Cuando los componentes Vue dejan de actualizarse inesperadamente debido a problemas de referencias reactivas, errores de destructuring o problemas de propiedades computadas
Corregir Errores de Hidratación SSR
Cuando las aplicaciones Vue renderizadas del lado del servidor muestran advertencias de hidratación incorrecta o diferencias de contenido entre cliente y servidor
Resolver Fallos de Componentes Asíncronos
Cuando los componentes de carga diferida fallan al cargar, muestran errores incorrectamente o causan fugas de memoria en aplicaciones Vue
جرّب هذه الموجهات
My Vue 3 component is not updating when I change the data. The ref value changes but the template does not re-render. How do I debug this?
I am getting hydration mismatch warnings in my Nuxt application. The server HTML does not match the client. How do I fix this?
My watcher is not triggering when a nested property changes in a reactive object. I am using deep: true but the callback never fires with the old and new values.
I am using KeepAlive with async components and my application is showing memory leaks. The mounted hook runs multiple times but unmounted never fires. How do I fix this?
أفضل الممارسات
- Usa Vue DevTools para inspeccionar el estado de los componentes, props y eventos emitidos en tiempo real
- Habilita el modo estricto de Vue durante el desarrollo para detectar problemas de reactividad tempranamente
- Declara siempre los emits explícitamente para evitar la duplicación accidental de eventos
تجنب
- Destructuring de objetos reactivos directamente - esto rompe la reactividad y debe usar toRefs o toRaw
- Usar v-for sin :key - causa problemas de renderizado y comportamiento impredecible
- Definir emits solo en runtime sin declaraciones basadas en tipos - pierde seguridad de tipos
الأسئلة المتكررة
¿Esta habilidad funciona con Vue 2?
¿Esta habilidad puede ayudar con problemas de rendimiento?
¿Esto cubre problemas específicos de Nuxt?
¿Cómo depuro el estado reactivo que no se actualiza?
¿Esto puede ayudar con errores de TypeScript en Vue?
¿Cómo depuro fallos de carga de componentes asíncronos?
تفاصيل المطور
بنية الملفات
📄 animation-key-for-rerender.md
📄 animation-transitiongroup-performance.md
📄 async-component-error-handling.md
📄 async-component-keepalive-ref-issue.md
📄 async-component-suspense-control.md
📄 async-component-vue-router.md
📄 attrs-event-listener-merging.md
📄 checkbox-true-false-value-form-submission.md
📄 click-events-on-components.md
📄 component-naming-conflicts.md
📄 component-ref-requires-defineexpose.md
📄 composable-avoid-hidden-side-effects.md
📄 composable-call-location-restrictions.md
📄 composable-naming-return-pattern.md
📄 composable-tovalue-inside-watcheffect.md
📄 composition-api-not-functional-programming.md
📄 composition-api-script-setup-async-context.md
📄 composition-api-vs-react-hooks-differences.md
📄 computed-conditional-dependencies.md
📄 computed-return-value-readonly.md
📄 configure-app-before-mount.md
📄 declare-emits-for-documentation.md
📄 define-expose-before-await.md
📄 define-model-default-value-sync.md
📄 defineEmits-must-be-top-level.md
📄 defineEmits-no-runtime-and-type-mixed.md
📄 definemodel-object-mutation-no-emit.md
📄 dom-update-timing-nexttick.md
📄 dynamic-argument-constraints.md
📄 dynamic-component-registration-vite.md
📄 event-modifier-order-matters.md
📄 exact-modifier-for-precise-shortcuts.md
📄 fallthrough-attrs-overwrite-vue3.md
📄 in-dom-template-parsing-caveats.md
📄 inheritattrs-false-for-wrapper-components.md
📄 keepalive-router-nested-double-mount.md
📄 keepalive-transition-memory-leak.md
📄 lifecycle-dom-access-timing.md
📄 lifecycle-hooks-synchronous-registration.md
📄 local-components-not-in-descendants.md
📄 multi-root-component-class-attrs.md
📄 native-event-collision-with-emits.md
📄 perf-computed-object-stability.md
📄 perf-props-stability-update-optimization.md
📄 plugin-global-properties-sparingly.md
📄 plugin-install-before-mount.md
📄 plugin-prefer-provide-inject-over-global-properties.md
📄 plugin-typescript-type-augmentation.md
📄 prop-defineprops-scope-limitation.md
📄 provide-inject-debugging-challenges.md
📄 provide-inject-default-value-factory.md
📄 provide-inject-reactivity-not-automatic.md
📄 provide-inject-synchronous-setup.md
📄 reactivity-debugging-hooks.md
📄 reactivity-markraw-for-non-reactive.md
📄 reactivity-proxy-identity-hazard.md
📄 reactivity-same-tick-batching.md
📄 refs-in-collections-need-value.md
📄 render-function-avoid-internal-vnode-properties.md
📄 render-function-vnodes-must-be-unique.md
📄 rendering-render-function-h-import-vue3.md
📄 rendering-render-function-return-from-setup.md
📄 rendering-render-function-slots-as-functions.md
📄 rendering-resolve-component-for-string-names.md
📄 select-initial-value-ios-bug.md
📄 self-referencing-component-name.md
📄 sfc-named-exports-forbidden.md
📄 sfc-scoped-css-child-component-styling.md
📄 sfc-scoped-css-dynamic-content.md
📄 sfc-scoped-css-slot-content.md
📄 sfc-script-setup-reactivity.md
📄 slot-forwarding-to-child-components.md
📄 slot-implicit-default-content.md
📄 slot-named-scoped-explicit-default.md
📄 slot-render-scope-parent-only.md
📄 slot-v-slot-on-components-or-templates-only.md
📄 ssr-hydration-mismatch-causes.md
📄 ssr-platform-specific-apis.md
📄 state-ssr-cross-request-pollution.md
📄 suspense-no-builtin-error-handling.md
📄 suspense-ssr-hydration-issues.md
📄 tailwind-dynamic-class-generation.md
📄 teleport-scoped-styles-limitation.md
📄 teleport-target-must-exist.md
📄 template-expressions-restrictions.md
📄 template-functions-no-side-effects.md
📄 template-ref-null-with-v-if.md
📄 template-ref-unwrapping-top-level.md
📄 textarea-no-interpolation.md
📄 transition-group-flip-inline-elements.md
📄 transition-group-move-animation-position-absolute.md
📄 transition-group-no-default-wrapper-vue3.md
📄 transition-js-hooks-done-callback.md
📄 transition-nested-duration.md
📄 transition-reusable-scoped-style.md
📄 transition-router-view-appear.md
📄 transition-type-when-mixed.md
📄 transition-unmount-hook-timing.md
📄 ts-defineprops-boolean-default-false.md
📄 ts-defineprops-imported-types-limitations.md
📄 ts-event-handler-explicit-typing.md
📄 ts-reactive-no-generic-argument.md
📄 ts-shallowref-for-dynamic-components.md
📄 ts-template-ref-null-handling.md
📄 ts-withdefaults-mutable-factory-function.md
📄 undeclared-emits-double-firing.md
📄 v-for-computed-reverse-sort.md
📄 v-for-range-starts-at-one.md
📄 v-model-ignores-html-attributes.md
📄 v-model-number-modifier-behavior.md
📄 v-show-template-limitation.md
📄 watch-async-creation-memory-leak.md
📄 watch-deep-same-object-reference.md
📄 watch-reactive-property-getter.md
📄 watcheffect-async-dependency-tracking.md
📄 watcheffect-flush-post-for-refs.md
📄 SKILL.md