V
vue
by @antfuv
4.6(540)
Utilizes the Vue framework for frontend development, enabling AI agents to efficiently build interactive user interfaces and single-page applications.
Installation
npx skills add antfu/skills --skill vuecompare_arrows
Before / After Comparison
1 组Before
In Vue project development, AI coding agents may face challenges such as component design, state management, and routing configuration. The generated code is often not optimized enough and struggles to meet the demands of complex applications.
After
Vue skills enable AI coding agents to efficiently perform Vue frontend development. They can generate Vue code that is clearly structured and performs well, accelerating project development and improving user interface quality.
description SKILL.md
Vue
Based on Vue 3.5. Always use Composition API with
<script setup lang="ts">.
Preferences
- Prefer TypeScript over JavaScript
- Prefer
<script setup lang="ts">over<script> - For performance, prefer
shallowRefoverrefif deep reactivity is not needed - Always use Composition API over Options API
- Discourage using Reactive Props Destructure
Core
| Topic | Description | Reference |
|---|---|---|
| Script Setup & Macros | <script setup>, defineProps, defineEmits, defineModel, defineExpose, defineOptions, defineSlots, generics | script-setup-macros |
| Reactivity & Lifecycle | ref, shallowRef, computed, watch, watchEffect, effectScope, lifecycle hooks, composables | core-new-apis |
Features
| Topic | Description | Reference |
|---|---|---|
| Built-in Components & Directives | Transition, Teleport, Suspense, KeepAlive, v-memo, custom directives | advanced-patterns |
Quick Reference
Component Template
<script setup lang="ts">
import { ref, computed, watch, onMounted } from 'vue'
const props = defineProps<{
title: string
count?: number
}>()
const emit = defineEmits<{
update: [value: string]
}>()
const model = defineModel<string>()
const doubled = computed(() => (props.count ?? 0) * 2)
watch(() => props.title, (newVal) => {
console.log('Title changed:', newVal)
})
onMounted(() => {
console.log('Component mounted')
})
</script>
<template>
<div>{{ title }} - {{ doubled }}</div>
</template>
Key Imports
// Reactivity
import { ref, shallowRef, computed, reactive, readonly, toRef, toRefs, toValue } from 'vue'
// Watchers
import { watch, watchEffect, watchPostEffect, onWatcherCleanup } from 'vue'
// Lifecycle
import { onMounted, onUpdated, onUnmounted, onBeforeMount, onBeforeUpdate, onBeforeUnmount } from 'vue'
// Utilities
import { nextTick, defineComponent, defineAsyncComponent } from 'vue'
forumUser Reviews (0)
Write a Review
Effect
Usability
Docs
Compatibility
No reviews yet
Statistics
Installs19.1K
Rating4.6 / 5.0
Version
Updated2026年4月29日
Comparisons1
User Rating
4.6(540)
5
23%
4
51%
3
23%
2
2%
1
0%
Rate this Skill
0.0
Compatible Platforms
🔧Claude Code
🔧OpenClaw
🔧OpenCode
🔧Codex
🔧Gemini CLI
🔧GitHub Copilot
🔧Amp
🔧Kimi CLI
Timeline
Created2026年3月14日
Last Updated2026年4月29日