组件 API 是开发者与系统之间的对话。如果 API 需要三页文档才能理解,那问题不在文档,而在 API 本身。
命名即文档
isLoading 比 status === 'loading' 更直接。onSubmit 比 handleFormSubmitCallback 更简洁。好的命名让代码自解释。
组合优于配置
与其提供一个有 40 个 props 的 <Table> 组件,不如提供 <Table>、<TableHeader>、<TableRow> 的组合。开发者按需组装,系统保持简单。
默认值是有立场的
每一个默认值都是一次设计决策。size="md" 意味着你认为中等尺寸是大多数场景的合理选择——这没问题,但要意识到你在替用户做决定。
最好的 API 是读一遍就懂的 API。