典型业务
前端开发不仅仅是把设计稿还原成页面,成熟的前端开发者需要独立应对各种交互场景,在用户体验、性能和工程可维护性之间找到平衡。本文档按照场景类别整理了前端 Web 开发中的典型业务场景,每个场景都包含核心问题、技术方案和工程实践。
交互体验
| 场景 | 核心问题 | 关键技术 |
|---|---|---|
| 表单处理 | 校验规则、动态联动、状态管理 | 受控/非受控组件、Schema 校验、多步表单、联动逻辑 |
| 拖拽与排序 | 拖拽交互、嵌套排序、跨容器移动 | HTML5 Drag API、指针事件、碰撞检测、动画过渡 |
| 搜索交互 | 搜索建议、历史记录、结果高亮 | 防抖节流、虚拟列表、Fuse.js/Worker、高亮渲染 |
| 动效与过渡 | 页面切换、微交互、性能开销 | CSS Animation、FLIP、View Transitions API、GPU 加速 |
数据呈现
| 场景 | 核心问题 | 关键技术 |
|---|---|---|
| 数据展示 | 大列表渲染、图表可视化、实时刷新 | 虚拟滚动、Canvas/WebGL、增量更新、轮询与推送 |
| 大屏可视化 | 自适应缩放、实时数据、视觉表现 | rem/vw 适配、DataV/ECharts、WebGL 粒子、定时刷新 |
| 3D 可视化 | 模型加载、场景交互、渲染性能 | Three.js、WebGPU、LOD 策略、实例化渲染、空间索引 |
| 地图与空间 | 坐标系转换、海量标注、路径规划 | Mapbox/高德 JS API、矢量瓦片、WebGL 渲染、空间聚合 |
内容创作
| 场景 | 核心问题 | 关键技术 |
|---|---|---|
| 富文本编辑 | 格式控制、内容安全、扩展性 | ProseMirror/Quill、XSS 过滤、粘贴清洗、插件架构 |
| 流程图编辑 | 节点连线、布局算法、交互体验 | DAG/Flow 布局、React Flow、贝塞尔曲线、缩放平移 |
| 在线协作编辑 | 多人同时编辑、冲突解决、一致性 | OT/CRDT 算法、光标同步、版本历史、离线编辑合并 |
| 低代码平台 | 拖拽搭建、组件生态、逻辑编排 | 物料引擎、JSON Schema 渲染、属性面板、沙箱隔离 |
实时通信
| 场景 | 核心问题 | 关键技术 |
|---|---|---|
| WebSocket | 连接管理、断线重连、消息协议 | 心跳保活、重连策略、二进制帧、消息队列缓冲 |
| 音视频 | 播放控制、实时通话、媒体处理 | WebRTC、Web Audio API、MediaRecorder、HLS/DASH |
| 消息通知 | 实时推送、到达保障、体验优化 | SSE、轮询降级、通知权限、桌面推送、未读计数 |
工程能力
| 场景 | 核心问题 | 关键技术 |
|---|---|---|
| 权限控制 | 路由守卫、角色渲染、按钮级控制 | 路由拦截、权限指令、动态菜单、RBAC 前端适配 |
| 主题与布局 | 深色模式、响应式、动态主题 | CSS 变量、媒体查询、主题切换、容器查询 |
| 国际化 | 多语言文案、日期货币、布局适配 | i18n 方案、ICU 格式、RTL 支持、动态加载语言包 |
| 文件处理 | 上传进度、断点续传、批量导出 | 分片上传、拖拽上传、Blob/Stream、异步导出 |
| 离线与缓存 | 弱网可用、资源预载、数据同步 | Service Worker、PWA、IndexedDB、后台同步 |
| 错误与监控 | 异常捕获、性能采集、用户行为 | Sentry、Performance API、Source Map、埋点上报 |