返回文章

前端面试:组件设计与代码质量

1. 一个好组件应该具备哪些特点? 职责单一、接口清晰、可复用、可扩展、状态明确、边界处理完整、样式不污染外部。 2. 业务组件和基础组件怎么区分? 基础组件偏通用,比如按钮、弹窗、表格;业务组件绑定具体业务,比如用户选择器、订单卡片。基础组件强调通用性,业务组件强调场景效率。 3. 如何设计一个弹窗组件? 支持 visible/v-model 、标题、内容 slot、确认取消事件、loading、关闭前校验、遮罩关闭、销毁策略。 4.

发布于 2026-06-20阅读量 40字数 686
前端面试

八、组件设计与代码质量

1. 一个好组件应该具备哪些特点?

职责单一、接口清晰、可复用、可扩展、状态明确、边界处理完整、样式不污染外部。

2. 业务组件和基础组件怎么区分?

基础组件偏通用,比如按钮、弹窗、表格;业务组件绑定具体业务,比如用户选择器、订单卡片。基础组件强调通用性,业务组件强调场景效率。

3. 如何设计一个弹窗组件?

支持 visible/v-model、标题、内容 slot、确认取消事件、loading、关闭前校验、遮罩关闭、销毁策略。

4. 如何设计一个表格/列表筛选组件?

筛选项配置化,支持默认值、重置、查询、分页、loading、空状态。表格列也可以配置化,复杂列用 slot。

5. 如何避免组件过度封装?

只封装稳定重复的逻辑,不为了抽象而抽象。组件接口不要设计太多参数,优先满足真实复用场景。

6. 如何处理组件之间复杂的数据传递?

父子用 props/emits,跨层用 provide/inject,跨页面或全局状态用 Pinia。避免多层透传导致维护困难。

7. Code Review 你一般关注什么?

功能正确性、边界情况、类型准确性、可读性、性能、安全、重复代码、命名规范、是否符合团队约定。

8. 你怎么保证代码可维护性?

清晰目录、统一规范、组件拆分合理、类型完善、代码审查、文档补充、复杂逻辑加测试或注释。

9. 如果接手一个很乱的老项目,你会怎么治理?

先保证功能稳定,不大面积重构。逐步补规范、整理目录、抽公共逻辑、清理无用代码、加类型和文档,边做业务边治理。

10. 如何写技术文档?

写清背景、目标、方案、接口、使用方式、注意事项和变更记录。文档重点是让别人能快速接手和排查问题。

回到目录

评论留言

登录后可留言和点赞
一片冰心黔ICP备2026012107号