前端技术栈演进分析
日期:2026-07-07
参与:宋献
背景
讨论员工端(H5)是否需要区分桌面端/移动端架构,主要驱动力:
- 现有截图能力(html2canvas)效果不满意
- 后续可能有远程桌面、语音视频需求
- 期望达到微信/QQ 类似的截图体验
现状分析
当前技术栈
| 端 |
技术栈 |
UI框架 |
| 员工端(H5) |
Vue3 + Vant4 |
移动端组件 |
| 坐席端 |
Vue3 + Element Plus |
桌面端组件 |
| 管理后台 |
Vue3 + Element Plus + Tailwind |
桌面端组件 |
H5 能力边界
| 需求 |
H5 能否满足 |
说明 |
| 截取任意屏幕 |
❌ 不能 |
html2canvas 只能截 DOM |
| 截图编辑 |
⚠️ 效果差 |
Fabric.js 重且性能一般 |
| 远程桌面 |
❌ 不能 |
需要原生能力 |
| 语音/视频 |
⚠️ 勉强 |
WebRTC 可做但体验一般 |
决策结论
截图能力差异化管理
| 端 |
截图方案 |
理由 |
| 员工端(移动) |
调研企微 JSBridge 或 Tauri |
需要原生截图能力 |
| 员工端(桌面) |
Tauri 桌面端 |
截图+远程桌面需求 |
| 坐席端 |
本地安装 Snipaste |
人少,可统一安装培训 |
推荐架构演进
技术选型
| 组件 |
技术 |
理由 |
| 员工桌面端 |
Tauri + Vant |
轻量(~10MB)、原生截图/远程桌面能力 |
| 坐席端截图 |
Snipaste |
免费/付费、体验好 |
下一步行动
| 优先级 |
动作 |
状态 |
| 🔴 高 |
调研企微 JSBridge 截图 API |
待执行 |
| 🔴 高 |
Tauri 桌面端原型开发(若企微不支持) |
待评估 |
| ✅ |
坐席端统一安装 Snipaste |
已确认方案 |
待调研问题
给企微管理员的调研提纲
附录:Tauri vs Electron 对比
| 对比项 |
Tauri |
Electron |
| 包大小 |
~10MB |
~150MB |
| 内存占用 |
低 |
高 |
| 启动速度 |
快 |
慢 |
| 截图能力 |
✅ 天然支持 |
✅ 支持 |
| 技术栈 |
Rust + WebView |
Node.js + Chromium |