vercel-react-best-practices
4
总安装量
3
周安装量
#50224
全站排名
安装命令
npx skills add https://github.com/kunhai-88/skills --skill vercel-react-best-practices
Agent 安装分布
windsurf
1
opencode
1
cursor
1
weavefox
1
kiro-cli
1
codex
1
Skill 文档
Vercel React æä½³å®è·µ
é¢å React å Next.js åºç¨çæ§è½ä¼åæåï¼ç± Vercel ç»´æ¤ãå å« 8 å¤§ç±»å ± 57 æ¡è§åï¼æå½±åç¨åº¦æåºï¼ç¨äºæå¯¼èªå¨åéæä¸ä»£ç çæã
使¶ä½¿ç¨
å¨ä»¥ä¸åºæ¯åèæ¬æåï¼
- ç¼åæ°ç React ç»ä»¶æ Next.js 页é¢
- å®ç°æ°æ®è·åï¼å®¢æ·ç«¯ææå¡ç«¯ï¼
- è¯å®¡æ§è½é®é¢
- éæç°æ React/Next.js 代ç
- ä¼åæå ä½ç§¯æå è½½æ¶é´
è§åç±»å«ä¸ä¼å 级
| ä¼å 级 | ç±»å« | å½±å | åç¼ |
|---|---|---|---|
| 1 | æ¶é¤çå¸è¯·æ± | å ³é® | async- |
| 2 | æå ä½ç§¯ä¼å | å ³é® | bundle- |
| 3 | æå¡ç«¯æ§è½ | é« | server- |
| 4 | 客æ·ç«¯æ°æ®è·å | ä¸é« | client- |
| 5 | 鿏²æä¼å | ä¸ | rerender- |
| 6 | æ¸²ææ§è½ | ä¸ | rendering- |
| 7 | JavaScript æ§è½ | ä½ä¸ | js- |
| 8 | é«çº§æ¨¡å¼ | ä½ | advanced- |
鿥
1. æ¶é¤çå¸è¯·æ±ï¼å ³é®ï¼
async-defer-await– å° await ç§»å°å®é 使ç¨ç忝åasync-parallel– ç¬ç«æä½ç¨ Promise.all()async-dependencies– é¨åä¾èµç¨ better-allasync-api-routes– API è·¯ç±ä¸æ©å建 promiseãæ awaitasync-suspense-boundaries– ç¨ Suspense æµå¼è¾åºå 容
2. æå ä½ç§¯ä¼åï¼å ³é®ï¼
bundle-barrel-imports– ç´æ¥å¯¼å ¥ï¼é¿å barrel æä»¶bundle-dynamic-imports– éåç»ä»¶ç¨ next/dynamicbundle-defer-third-party– hydration ååå è½½åæ/æ¥å¿bundle-conditional– ä» å¨è¯¥åè½æ¿æ´»æ¶å 载模åbundle-preload– hover/focus æ¶é¢å è½½ï¼æåæç¥é度
3. æå¡ç«¯æ§è½ï¼é«ï¼
server-auth-actions– Server Actions å API è·¯ç±ä¸æ ·åé´æserver-cache-react– ç¨ React.cache() å请æ±çº§å»éserver-cache-lru– 跨请æ±ç¼åç¨ LRUserver-dedup-props– é¿å RSC props éå¤åºååserver-serialization– ä¼ ç» Client ç»ä»¶çæ°æ®å°½éç²¾ç®server-parallel-fetching– è°æ´ç»ä»¶ç»æä»¥å¹¶è¡è¯·æ±server-after-nonblocking– éé»å¡æä½ç¨ after()
4. 客æ·ç«¯æ°æ®è·åï¼ä¸é«ï¼
client-swr-dedup– ç¨ SWR èªå¨è¯·æ±å»éclient-event-listeners– å ¨å±äºä»¶çå¬å»éclient-passive-event-listeners– æ»å¨ç¨ passive çå¬client-localstorage-schema– localStorage æ°æ®çæ¬åå¹¶ç²¾ç®
5. 鿏²æä¼åï¼ä¸ï¼
rerender-defer-reads– ä¸å¨ä» ç¨äºåè°ç state ä¸è®¢érerender-memo– æè´µé»è¾æ½å° memo ç»ä»¶rerender-memo-with-default-value– éåå§ç±»åé»è®¤ props æårerender-dependencies– effect ä¾èµç¨åå§ç±»årerender-derived-state– è®¢é æ´¾çå¸å°å¼èéåå§å¼rerender-derived-state-no-effect– å¨ render 䏿´¾çï¼ä¸ç¨ effectrerender-functional-setstate– ç¨å½æ°å¼ setState ä¿æåè°ç¨³å®rerender-lazy-state-init– æè´µåå§å¼ç¨å½æ°ä¼ useStatererender-simple-expression-in-memo– ç®ååå§ç±»åä¸å¿ memorerender-move-effect-to-event– 交äºé»è¾æ¾è¿äºä»¶å¤çrerender-transitions– éç´§æ¥æ´æ°ç¨ startTransitionrerender-use-ref-transient-values– ç¬æé¢ç¹å¼ç¨ ref
6. æ¸²ææ§è½ï¼ä¸ï¼
rendering-animate-svg-wrapper– å¨ç»ä½ç¨å¨ div å 裹å±ï¼å«å¨ SVGrendering-content-visibility– é¿åè¡¨ç¨ content-visibilityrendering-hoist-jsx– éæ JSX æå°ç»ä»¶å¤rendering-svg-precision– éä½ SVG åæ ç²¾åº¦rendering-hydration-no-flicker– ä» å®¢æ·ç«¯æ°æ®ç¨å è scriptrendering-hydration-suppress-warning– 颿ä¸ä¸è´æ¶åå¶è¦årendering-activity– æ¾éç¨ Activity ç»ä»¶rendering-conditional-render– æ¡ä»¶æ¸²æç¨ä¸å èé &&rendering-usetransition-loading– å è½½æä¼å useTransition
7. JavaScript æ§è½ï¼ä½ä¸ï¼
js-batch-dom-css– éè¿ class æ cssText æ¹éæ¹ CSSjs-index-maps– é夿¥æ¾ç¨ Mapjs-cache-property-access– 循ç¯å ç¼åå¯¹è±¡å±æ§js-cache-function-results– 模å级 Map ç¼å彿°ç»æjs-cache-storage– ç¼å localStorage/sessionStorage 读åjs-combine-iterations– å并夿¬¡ filter/map ä¸ºä¸æ¬¡å¾ªç¯js-length-check-first– æè´µæ¯è¾åå æ¥ lengthjs-early-exit– 彿°å å°½æ© returnjs-hoist-regexp– RegExp æå°å¾ªç¯å¤js-min-max-loop– min/max ç¨å¾ªç¯ä»£æ¿ sortjs-set-map-lookups– O(1) æ¥æ¾ç¨ Set/Mapjs-tosorted-immutable– ä¸å¯åæåºç¨ toSorted()
8. é«çº§æ¨¡å¼ï¼ä½ï¼
advanced-event-handler-refs– äºä»¶å¤çå refadvanced-init-once– åºç¨çº§åªåå§å䏿¬¡advanced-use-latest– useLatest 稳å®åè° ref
ä½¿ç¨æ¹å¼
é è¯»åæ¡è§åæä»¶è·å说æä¸ç¤ºä¾ï¼
rules/async-parallel.md
rules/bundle-barrel-imports.md
æ¯æ¡è§åå å«ï¼ä¸ºä½éè¦ãé误示ä¾ãæ£ç¡®ç¤ºä¾ãè¡¥å 说æä¸åèã
宿´å±å¼çè§ rules/ ç®å½ä¸å .md è§åæä»¶ã