# Vue.ts 3 API Reference Quick reference with links to official Vue.ts documentation. ## Official Documentation **Main Site:** https://vuejs.org ## Table of Contents 1. [Getting Started](#getting-started) 2. [Essentials](#essentials) 3. [Components In-Depth](#components-in-depth) 4. [Reusability](#reusability) 5. [Built-in Components](#built-in-components) 6. [API Reference](#api-reference) 7. [TypeScript Patterns](#typescript-patterns) --- ## Getting Started ### Introduction **URL:** https://vuejs.org/guide/introduction.html - What is Vue? - Progressive Framework - Single-File Components - API Styles (Options vs Composition) - Which to choose? ### Quick Start **URL:** https://vuejs.org/guide/quick-start.html - Creating a Vue Application - Using Vue from CDN - With build tools (Vite) - IDE Setup ### Creating an Application **URL:** https://vuejs.org/guide/essentials/application.html - Application instance - Root component - Mounting the app - App configurations --- ## Essentials ### Template Syntax **URL:** https://vuejs.org/guide/essentials/template-syntax.html - Text interpolation - Raw HTML (v-html) - Attribute bindings (v-bind) - TypeScript expressions - Directives ### Reactivity Fundamentals **URL:** https://vuejs.org/guide/essentials/reactivity-fundamentals.html - `ref()` - Reactive state for primitives - `reactive()` - Reactive objects - Reactive proxy vs original - `nextTick()` - DOM update timing ### Computed Properties **URL:** https://vuejs.org/guide/essentials/computed.html - Basic usage - Computed caching vs methods - Writable computed - Best practices ### Class and Style Bindings **URL:** https://vuejs.org/guide/essentials/class-and-style.html - Binding HTML classes - Binding inline styles - Object syntax - Array syntax ### Conditional Rendering **URL:** https://vuejs.org/guide/essentials/conditional.html - `v-if`, `v-else-if`, `v-else` - `v-show` - v-if vs v-show - v-if with v-for ### List Rendering **URL:** https://vuejs.org/guide/essentials/list.html - `v-for` with arrays - `v-for` with objects - `v-for` with ranges - Maintaining state with `key` - Array change detection ### Event Handling **URL:** https://vuejs.org/guide/essentials/event-handling.html - Listening to events (`v-on` / `@`) - Method handlers - Inline handlers - Event modifiers (.stop, .prevent, etc.) - Key modifiers ### Form Input Bindings **URL:** https://vuejs.org/guide/essentials/forms.html - `v-model` basics - Text, textarea inputs - Checkboxes, radio buttons - Select dropdowns - Modifiers (.lazy, .number, .trim) ### Lifecycle Hooks **URL:** https://vuejs.org/guide/essentials/lifecycle.html - Lifecycle diagram - `onMounted()`, `onUpdated()`, `onUnmounted()` - `onBeforeMount()`, `onBeforeUpdate()`, `onBeforeUnmount()` - `onErrorCaptured()`, `onActivated()`, `onDeactivated()` ### Watchers **URL:** https://vuejs.org/guide/essentials/watchers.html - `watch()` - Watch specific sources - `watchEffect()` - Auto-track dependencies - Deep watchers - Eager watchers (immediate) - Callback flush timing - Stopping watchers ### Template Refs **URL:** https://vuejs.org/guide/essentials/template-refs.html - Accessing DOM elements - Refs inside v-for - Function refs - Component refs ### Components Basics **URL:** https://vuejs.org/guide/essentials/component-basics.html - Defining components - Using components - Passing props - Listening to events - Slots --- ## Components In-Depth ### Registration **URL:** https://vuejs.org/guide/components/registration.html - Global registration - Local registration - Component name casing ### Props **URL:** https://vuejs.org/guide/components/props.html - Props declaration - Prop types and validation - Prop passing details - One-way data flow - Boolean casting - Prop validation ### Events **URL:** https://vuejs.org/guide/components/events.html - Emitting and listening to events - Event arguments - Declaring emitted events - Events validation - Usage with v-model ### Component v-model **URL:** https://vuejs.org/guide/components/v-model.html - Basic usage - v-model arguments - Multiple v-model bindings - Custom modifiers ### Fallthrough Attributes **URL:** https://vuejs.org/guide/components/attrs.html - Attribute inheritance - Disabling inheritance - Accessing fallthrough attributes - Multi-root nodes ### Slots **URL:** https://vuejs.org/guide/components/slots.html - Default slot content - Named slots - Scoped slots - Renderless components ### Provide / Inject **URL:** https://vuejs.org/guide/components/provide-inject.html - Basic usage - App-level provide - Working with reactivity - Working with Symbol keys ### Async Components **URL:** https://vuejs.org/guide/components/async.html - Basic usage - Loading and error states - Using with Suspense --- ## Reusability ### Composables **URL:** https://vuejs.org/guide/reusability/composables.html - What is a composable? - Mouse tracker example - Async state example - Conventions and best practices - Usage restrictions - Extracting composables ### Custom Directives **URL:** https://vuejs.org/guide/reusability/custom-directives.html - Introduction - Directive hooks - Hook arguments - Function shorthand - Object literals - Usage on components ### Plugins **URL:** https://vuejs.org/guide/reusability/plugins.html - Introduction - Writing a plugin - Plugin options - Provide / inject with plugins --- ## Built-in Components ### Transition **URL:** https://vuejs.org/guide/built-ins/transition.html - Basic usage - CSS-based transitions - TypeScript hooks - Reusable transitions - Appear on initial render - Transition between elements - Transition modes ### TransitionGroup **URL:** https://vuejs.org/guide/built-ins/transition-group.html - Basic usage - Move transitions - Staggering list transitions ### KeepAlive **URL:** https://vuejs.org/guide/built-ins/keep-alive.html - Basic usage - Include / exclude - Max cached instances - Lifecycle of cached instance ### Teleport **URL:** https://vuejs.org/guide/built-ins/teleport.html - Basic usage - Using with components - Multiple teleports on same target - Disabling teleport ### Suspense **URL:** https://vuejs.org/guide/built-ins/suspense.html - Async dependencies - Loading state - Error handling - Combining with Transitions - **Note:** Experimental feature --- ## API Reference ### Global API **URL:** https://vuejs.org/api/application.html - Application API - General API ### Composition API - Setup **URL:** https://vuejs.org/api/composition-api-setup.html - `setup()` function - `