组件文档页面推荐手写html+原生js,避免react/vue框架干扰;api表格需固定name/type/default/description列,type写明确类型,default写具体值;示例代码提供最小可运行片段并用相对路径;锚点跳转需确保id唯一、全小写无特殊字符,并用css scroll-margin-top适配固定header。

组件文档页面要不要用框架
纯 HTML 组件文档页面,不推荐硬套 React/Vue。你只是想让人看清 props、events、slots 怎么用,不是搭应用。框架反而增加构建、路由、状态管理的干扰,连本地双击打开 index.html 都可能报跨域或模块错误。
真正轻量又可控的方式是:手写 HTML + 原生 JS 交互(比如折叠示例代码、切换标签页),用 localStorage 记住展开状态即可。如果已有 Webpack/Vite 项目,再考虑用 VitePress 或 Storybook —— 但那已是另一层需求。
API 表格怎么写才不翻车
新手常把 API 文档写成 Word 式大段文字,结果用户找不到 disabled 是布尔值还是字符串,也看不出必填项。正确做法是固定字段列:Name、Type、Default、Description,且每行只描述一个 API 成员。
-
Type列必须明确基础类型,如string、number、boolean;联合类型写成string | number,不要写“字符串或数字” - 可选参数在
Name列末尾加?(如size?),别靠文字说明“非必填” -
Default列写具体值:false、''、null,避免“无”“空”“默认不启用”这类模糊表述 - 表格用
<table> 即可,不需要 fancy UI 库 —— 可读性比样式重要十倍 <h3>示例代码怎么嵌入才安全又可用</h3> <p>直接把 <code><my-button></my-button>写死在文档里,用户复制粘贴后大概率跑不起来:缺样式、缺注册、缺依赖。得提供「最小可运行片段」。每个示例区块用
<pre class="brush:php;toolbar:false;"><code></code> 包裹,并标注语言(<code>language-html</code> 或 <code>language-js</code>)。关键点:</pre>- HTML 示例包含完整结构:DOCTYPE、
、(含必要 CSS 引入)、和组件标签 - JS 示例第一行加
// 在组件定义之后执行,避免用户误以为这是初始化入口 - 禁用内联
style或script,全部外链或注释说明来源(如“需引入button.css”) - 所有路径用相对路径,如
./dist/my-button.js,别写https://cdn.example.com/...—— 用户离线时就废了
为什么锚点跳转经常失效
点击
#props没反应?八成是 ID 冲突或滚动行为被拦截。原生锚点依赖元素id属性严格匹配,且浏览器默认滚动到视口顶部 —— 但文档页常有固定 header,导致标题被遮住。解决方法很简单:
- 确保每个小节标题用
<h3 id="props">Props</h3>,ID 全小写、无空格、无特殊字符(on-click✅,onClick❌) - 加一行 CSS:
h3 { scroll-margin-top: 60px; }(适配 60px 高的 header),不用 JS 监听 hashchange - 导航链接写成
@#@#@#@#@#@#@#@#@#@0,别用javascript:void(0)+ click 事件模拟 —— 损失 SEO 和前进后退能力
最常被忽略的是:多个相同 ID(比如重复用了
id="example")会让document.getElementById返回第一个,后续锚点全指向它。检查一遍 ID 唯一性,比调任何 JS 都管用。 - HTML 示例包含完整结构:DOCTYPE、
大量免费API接口:立即使用
涵盖生活服务API、金融科技API、企业工商API、等相关的API接口服务。免费API接口可安全、合规地连接上下游,为数据API应用能力赋能!











