rendering-hoist-jsx
17
总安装量
12
周安装量
#19976
全站排名
安装命令
npx skills add https://github.com/theorcdev/8bitcn-ui --skill rendering-hoist-jsx
Agent 安装分布
claude-code
9
opencode
8
codex
8
windsurf
8
gemini-cli
7
antigravity
7
Skill 文档
Hoist Static JSX Elements
Extract static JSX outside components to avoid re-creation.
Incorrect (recreates element every render):
function LoadingSkeleton() {
return <div className="animate-pulse h-20 bg-gray-200" />
}
function Container() {
return (
<div>
{loading && <LoadingSkeleton />}
</div>
)
}
Correct (reuses same element):
const loadingSkeleton = (
<div className="animate-pulse h-20 bg-gray-200" />
)
function Container() {
return (
<div>
{loading && loadingSkeleton}
</div>
)
}
This is especially helpful for large and static SVG nodes, which can be expensive to recreate on every render.
Note: If your project has React Compiler enabled, the compiler automatically hoists static JSX elements and optimizes component re-renders, making manual hoisting unnecessary.