# 页面优化模式 本文档展示如何用框架内建组件替换常见的自定义代码和原生 HTML 实现。 ## 基础元素替换 ### 按钮优化 **优化前**: ```vue ``` **优化后**: ```vue 提交 提交 ``` ### 输入框优化 **优化前**: ```vue
``` **优化后**: ```vue ``` ### 卡片容器优化 **优化前**: ```vue

卡片标题

卡片描述

卡片内容
``` **优化后**: ```vue 卡片内容 ``` ## 交互组件替换 ### 模态对话框优化 **优化前**: ```vue ``` **优化后**: ```vue ``` ### 分页组件优化 **优化前**: ```vue ``` **优化后**: ```vue ``` ## 反馈组件替换 ### 加载状态优化 **优化前**: ```vue

加载中...

``` **优化后**: ```vue ``` ### 空状态优化 **优化前**: ```vue
空状态

暂无数据

``` **优化后**: ```vue ``` ### 消息提示优化 **优化前**: ```vue ``` **优化后**: ```vue ``` ## 表单组件替换 ### 复选框优化 **优化前**: ```vue ``` **优化后**: ```vue 同意协议 ``` ### 开关优化 **优化前**: ```vue
``` **优化后**: ```vue ``` ### 下拉选择优化 **优化前**: ```vue ``` **优化后**: ```vue ``` ### 级联选择优化 **优化前**: ```vue ``` **优化后**: ```vue ``` ## 数据展示优化 ### 标签页优化 **优化前**: ```vue ``` **优化后**: ```vue ``` ### 头像显示优化 **优化前**: ```vue
头像 {{ user.name[0] }}
``` **优化后**: ```vue ``` ## 特效组件应用 ### 卡片特效增强 **优化前**: ```vue
``` **优化后**: ```vue ``` ### 文字特效增强 **优化前**: ```vue

欢迎使用

``` **优化后**: ```vue 欢迎使用 ``` ## 布局优化 ### 页面结构优化 **优化前**: ```vue ``` **优化后**: ```vue ``` ## 优化原则 1. **优先使用框架组件**: 检查 `src/ui/components/` 是否有对应的内建组件 2. **参考组件源码**: 查看组件实现了解使用方式和 API 3. **保持功能一致**: 确保替换后的组件功能与原代码一致 4. **简化代码**: 移除不必要的自定义样式和逻辑 5. **统一风格**: 使用框架组件可以保持整个应用的视觉一致性 6. **提升可维护性**: 框架组件有统一的 API 和文档,更易维护 ## 常见场景映射 | 场景 | 原实现 | 框架组件 | | ---------- | ---------------------- | ----------------------------- | | 用户列表 | 自定义表格 + 分页 | FaCard + FaPagination | | 表单提交 | 原生 form + input | FaInput + FaButton + FaModal | | 数据加载 | 自定义 loading | FaLoading | | 错误提示 | alert / 自定义 toast | FaToast | | 确认对话框 | confirm / 自定义 modal | FaModal (useFaModal) | | 图片上传 | 自定义上传组件 | FaImageUpload | | 搜索功能 | input + 搜索逻辑 | FaSearchBar | | 级联选择 | 多级联动 select | FaCascader | | 数据统计 | 自定义数字展示 | FaCountTo / FaAnimatedCountTo | | 趋势展示 | 自定义图表 | FaSparkline + FaTrend | | 时间显示 | 自定义格式化 | FaTimeAgo |