一、 word,TXT
方案 | 优点 | 缺点 | demo | |
---|---|---|---|---|
1 | docx-preview:npm install docx-preview -S | 只支持.docx,不支持在线编辑 | ||
2 | vue-doc-preview:npm i vue-doc-preview | 支持文本类型:
| 相关资料少,很久没更新,引用找不到仓库 | |
3 | Mammoth:npm install mammoth |
| github地址:https://github.com/mwilliamson/mammoth.js |
二、excel
方案 | 优点 | 缺点 | demo | |
---|---|---|---|---|
1 | sheetjs js-xlsx:npm install xlsx | js-xlsx是sheetJS出品的读取和导出各种ecxel的工具库,功能十分强大 | demo示例 | |
2 | canvas-datagrid:npm install canvas-datagrid | 基于 canvas 来渲染表格,支持表格过滤、数据编辑、自定义操作菜单、大数据场景优化、主题样式修改 | ||
3 | handsontable:npm install handsontable @handsontable/vue | handsontable基于 DOM 元素来渲染表格,功能强大,canvas-datagrid` 支持的功能它都支持,并且主题样式扩展更方便 | 官网地址:Tutorial: Custom build - Handsontable Documentation github地址:https://github.com/handsontable/handsontable | |
4 | Luckysheet | 纯前端类似excel的在线表格 |
三、 video
方案 | 优点 | 缺点 | demo | |
---|---|---|---|---|
1 | vue3-video-play:npm install vue3-video-play --save | 支持MP4/WebM/Ogg格式 | ||
2 | video :原生标签 |
四、其他方案:如word,excel、txt类型的文件,可以用后端将不同合适的文件转化为pdf,变成统一格式。且前端预览效果最好的目前是pdf,不会出现文字错乱与乱码的情况
前端 | 后端 |
---|---|
前端使用pdfjs渲染pdf文件 | 后端使用maven仓库内aspose将doc转化为pdf文件 |
五、参考alist
类型 | 使用工具 | 官网 | ||
---|---|---|---|---|
1 | video | artplayer | Artplayer.js | ![]() |
2 | office文档类型 | aliyun: https://g.alicdn.com/IMM/office-js/1.1.5/aliyun-web-office-sdk.min.js | 文档在线协作有哪些功能特性、实现原理和使用方法_智能媒体管理-阿里云帮助中心 |