React/Vue 组件边界:状态放对地方比封装更重要
2026/9/4 10:32:09 网站建设 项目流程

React/Vue 组件边界:状态放对地方比封装更重要

组件难维护,很多时候不是 API 不够优雅,而是同一份状态同时存在 props、本地 state 和全局 store。先确定谁拥有状态,再谈抽象。

受控状态只保留一个来源

父组件保存业务值,子组件通过回调提出变更;临时展开、hover 等展示状态留在局部。由 props 推导出的值尽量在渲染时计算,不再复制一份。

组件接口要表达意图

事件名说明发生了什么,不暴露内部 DOM 操作。异步副作用放在明确边界,并在卸载或参数变化时取消。

  • 键盘操作和 label 一起验收。
  • 空数据、加载和失败状态都有出口。
  • 性能优化先用 Profiler 找重渲染。

用例比抽象层数更能说明设计

为受控、只读和错误三类场景写用例。组件能在这些场景保持同一状态语义,才值得继续复用。

可维护组件不是把逻辑藏得更深,而是让状态流向一眼能看明白。

原稿中的最小片段

type SearchProps = { value: string; onChange(value: string): void };

这段片段保留原样,只用于说明接口形态;接入项目时仍要补齐类型、错误和测试。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询