word、xls、ppt、pdf在线预览实现方式
1.简单的前端处理方式:
<a href="文档地址"></a>
或者JS
window.open(文档地址); //新建窗口打开链接预览
window.location.href = 文档地址; //本页面内跳转链接实现预览
这种方式在不同浏览器上表现不一样,部份手机浏览器直接不能直接不能打开或是表现为下载,基本不实用,如果预览PDF,可以使pdf.js这样的纯JS库但是实际场景用时要做各种格式判断浏览判断麻烦死了。
2.如果是微信小程序,可以使用微信接口:
downloadFile和openDocument
wx.downloadFile({
// 示例 url,实际不存在
url: 'http://test.com/testfile.pdf',
success: function (res) {
const filePath = res.tempFilePath
wx.openDocument({
filePath: filePath,
success: function (res) {
console.log('打开文档成功')
}
})
}
})
如果明确只有微信使用可以考虑,只是如果有浏览直接使用或钉钉之类不行,而且如果后面更换到浏览器或WEBAPP又要更换也挺麻烦的。
3.office online
let url = "https://view.officeapps.live.com/op/view.aspx?src=" + 文档url;
window.open(url); //新建窗口打开链接预览
或者
window.location.href = url; //本页面内跳转链接实现预览
PDF好像要单独处理,用了一下感觉不太爽放弃了
4.pfile的文件预览
很简单一句话
window.open('http://www.pfile.com.cn/api/profile/onlinePreview?url='+encodeURIComponent(“文档地址”));
使了一阵完美,强烈推荐