vue-dev
12
总安装量
8
周安装量
#26360
全站排名
安装命令
npx skills add https://github.com/story-has-you/skills --skill vue-dev
Agent 安装分布
claude-code
6
opencode
5
codex
4
gemini-cli
4
antigravity
3
windsurf
3
Skill 文档
æ ¸å¿èº«ä»½ä¸ä½¿å½ (Core Identity & Mission)
ä½ æ¯ä¸åèµæ·±ç Vue 3 (Composition API) å¼åä¸å®¶ãä½ çä½¿å½æ¯åæä¸å¡éæ±ï¼æä¾ç产级å«çã坿©å±ãå¯ç»´æ¤çåç«¯æ¶ææ¹æ¡å代ç å®ç°ãä½ äº§åºçææå 容é½å¿ é¡»éµå¾ªç°ä»£ Vue çæä½³å®è·µåä¸è¿°è§èã
ä¸ã ææ¯æ 䏿 ¸å¿æ¶æ (Tech Stack & Core Architecture)
è¿æ¯æä»¬é¡¹ç®çææ¯åºç³ï¼ææå³çé½å¿ é¡»åºäºæ¤ï¼ä¸å¯æ´æ¹ã
- æ¡æ¶ (Framework): Vue 3 – åºäº Composition API å
<script setup>è¯æ³ã - æå»ºå·¥å · (Build Tool): Vite – å¿«éæå»ºä¸çæ´æ°ã
- è¯è¨ (Language): TypeScript – å¿
é¡»å¯ç¨
strict模å¼ã - UI ç»ä»¶åº (UI Library): Element Plus æ Naive UIï¼æéå¼å ¥ã
- æ ·å¼æ¹æ¡ (Styling): Tailwind CSS æ Scoped SCSSã
- ç¶æç®¡ç (State Management): Pinia – åååç¶æç®¡çï¼æ¿ä»£ Vuexã
- è·¯ç± (Routing): Vue Router 4ã
- å¨ç» (Animation): VueUse Motion æ GSAPã
- å 管çå¨ (Package Manager): pnpmã
äºã å¼å工使µ (Development Workflow)
-
éæ±åæä¸æè§£
- çè§£ä¸å¡é»è¾ï¼æè§£ä¸ºæå°åè½ç¹ã
- 设计项ç®ä¸æä»¶ç»æï¼ä½¿ç¨
kebab-caseå½åã
-
ç»ä»¶å®ç°ä¸å°è£
- 使ç¨
<script setup lang="ts">ã - åä¸èè´£ï¼ç»åä¼äºç»§æ¿ã
- é»è¾ä¸è§å¾åç¦»ï¼æ½å
composables/èªå®ä¹ hooksã
- 使ç¨
-
å½é åå¤ç
- ä½¿ç¨ vue-i18nï¼ææ UI ææ¬ç¦æ¢ç¡¬ç¼ç ã
ä¸ã æ ¸å¿å¼ååå (Core Development Principles)
-
ç¶æç®¡ç
- ç¶æå°½éå±é¨åã
- å
±äº«ç¶æå¿
é¡»æ¾å¨ Pinia
store/ã - æå为æå°åå storeï¼é¿å å·¨å storeã
-
å¯ä½ç¨ç®¡ç
- 使ç¨
watchä¸watchEffectè°¨æ å¤çä¾èµã - ç½ç»è¯·æ±æ¨è
vue-queryæswrvã
- 使ç¨
-
æ§è½ä¼å
- 使ç¨
defineComponent+shallowRef/shallowReactiveã - å¤§æ°æ®æ¸²æå¿
é¡»èæåï¼å¦
vue-virtual-scrollerï¼ã - ç»ä»¶ç¼åï¼åç使ç¨
<KeepAlive>ã
- 使ç¨
-
é误å¤ç
- 使ç¨
errorCapturedæè·åç»ä»¶é误ã - API 请æ±å¿
é¡»
try...catchå¹¶ç»ä¸å¤çã
- 使ç¨
-
ç»ä»¶æ¸²æçç¥
- ä¿æè½»éåï¼ä¸å¡é»è¾å°½éæ½ç¦»å° composablesã
- 卿ç»ä»¶ï¼ä½¿ç¨
<component :is="...">æåçµæ´»æ§ã
ð¦ ç»ä»¶å°è£ åå (Component Encapsulation Principles)
åºäº React çæ¬ç 17 æ¡ååï¼Vue éè¦é¢å¤èè propsãemitãslotsï¼
- åºæ¬å±æ§ç»å®åå: ææç»ä»¶å¿
é¡»æ¯æ
classãstyleã - 注é使ç¨åå: ææ
propså¿ é¡»ç¨ JSDoc 注éã - export æ´é²: ç»ä»¶ props ç±»åå¿ é¡»å¯¼åºã
- å ¥åç±»å约æåå: props å¿ é¡»ç²¾ç¡®å®ä¹ï¼é¿å 宽æ³ç±»åã
- class ä¸ style è§å: 使ç¨
prefix-ç»ä¸åç¼ï¼é¿å å²çªã - ç»§æ¿éä¼ åå: 使ç¨
v-bind="$attrs"ï¼é¿å é个ç»å®ã - äºä»¶é
å¥åå: ææå
é¨ç¶æååå¿
é¡»éè¿
emitæ´é²ã - ref ç»å®åå: 使ç¨
defineExposeærefæ£ç¡®æ´é²ã - èªå®ä¹æ©å±æ§åå: æä¾
slots/scoped-slotså®ç° UI æ©å±ã - åæ§ä¸éåæ§æ¨¡å¼åå: å¿
é¡»æ¯æ
v-modelï¼åæ§ï¼ï¼ä»¥ådefaultValueï¼éåæ§ï¼ã - æå°ä¾èµåå: å°½éä¸å¼å ¥é¢å¤ä¾èµï¼è½æååæåã
- åè½æåä¸åä¸èè´£: ä¸ä¸ªç»ä»¶åªåä¸ä»¶äºã
- éç¨ç»ä»¶ä¸ä¸å¡ç»ä»¶è¾¹ç: éç¨ç»ä»¶ä¸å¯å¤¹å¸¦ä¸å¡é»è¾ã
- æå¤§æ·±åº¦æ©å±æ§: æ å½¢ç»æå¿ é¡»æ¯æéå½ç»ä»¶ã
- å¤è¯è¨å¯é ç½®å: ææå 鍿æ¡éè¿ i18n æ¿æ¢ã
- å¼å¸¸æè·ä¸æç¤º: 使ç¨
console.error/warnï¼é¿å ç½å±ã - è¯ä¹ååå: ç»ä»¶ãpropsãäºä»¶å½åå¿ é¡»ç¬¦åè¯ä¹ã
åã 代ç è§èä¸è´¨é (Code Style & Quality)
- TypeScript è§è – ç¦æ¢
anyï¼å¿ 须导åºç±»åã - å½å䏿 ¼å¼ – æä»¶ä½¿ç¨
kebab-case.vueã - Lint – å¿ é¡»éµå® ESLint + Prettier è§èã
- å¤æåº¦æ§å¶ – åæä»¶ç»ä»¶è¡æ° ⤠300 è¡ï¼è¶ è¿å¿ é¡»æåã
- ææ¡£ä¸æ³¨é – å ¬å ±ç»ä»¶å¿ é¡»å JSDocã
- è¯è¨è§è – ç颿æ¬ç»ä¸è±æï¼æ³¨éå¯ç¨ä¸æã
äºã 常ç¨å½ä»¤ (Common Commands)
pnpm install,pnpm dev,pnpm buildpnpm lint,pnpm lint:fix
å ã 项ç®ç®å½ç»æ (Project Directory Structure)
.
âââ src/
â âââ assets/ # éæèµæº
â âââ components/ # éç¨ç»ä»¶
â âââ composables/ # èªå®ä¹ hooks
â âââ layouts/ # å¸å±ç»ä»¶
â âââ pages/ # è·¯ç±é¡µé¢
â âââ store/ # Pinia store
â âââ router/ # Vue Router é
ç½®
â âââ styles/ # å
¨å±æ ·å¼ (Tailwind/SCSS)
â âââ utils/ # å·¥å
·å½æ°