vue使用Office Web实现线上文件预览

 更新时间:2022年07月14日 15:27:59   作者:青烟小生  
这篇文章主要为大家介绍了vue使用微软的开发接口Office Web,实现线上文件预览,预览word,excel,pptx,pdf文件,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

正文

我们在浏览器阅读word,excel,pptx的offic文件,可以使用微软的开发接口,一个阅读器Office Web

什么是 Office Web 查看器?

它是一种创建 Office Web Viewer 链接的服务。Office Web Viewer 链接可在浏览器中打开 Word、PowerPoint 或 Excel 文件,否则这些文件将被下载。您可以轻松地将下载链接转换为 Office Web Viewer 链接以在您的网站或博客中使用(例如,食谱、照片幻灯片、菜单或预算模板)。

Office Web Viewer 的一些优点包括:

  • 您无需为 Web 转换 Office 文件(例如,PDF、HTML)。
  • 任何人都可以从您的网站或博客查看 Office 文件,即使他们没有 Office。
  • 它会密切关注您的网站或博客,因为读者无需下载文件,他们就可以留在浏览器中。
  • 一个链接适用于计算机、平板电脑和手机。

vue预览word,excel,pptx,pdf文件

1、做word,excel,pptx的预览,要先确定文件路径访问是通过域名的url来预览,不可以通过IP的url来访问

先把文件路径的url进行url编码(encodeURIComponent

let router = 'https://aaaaaa.com/file/download?filename=file.obj_id'  //文件路径
let url = encodeURIComponent(routeUrl)

然后用Office Web Viewer的路径接口

http://view.officeapps.live.com/op/view.aspx?src=

把两个拼接在一起

let officeUrl = 'http://view.officeapps.live.com/op/view.aspx?src='+url
window.open(officeUrl,'_target')

这样就可以预览word,excel,pptx文件了

完整的代码

let routeUrl = 'https://aaaaaa.com/file/download?filename=file.obj_id'
let url = encodeURIComponent(routeUrl)
let officeUrl = 'http://view.officeapps.live.com/op/view.aspx?src='+url
window.open(officeUrl,'_target')

2、pdf文件预览

下载好pdf.js(下载地址在下面),放到static的目录下面

网站链接 http://mozilla.github.io/pdf.js/getting_started/#download

然后

<div style="height:800px;">
  <iframe :src="pdfSrc" width="100%" height="100%"></iframe>
</div>
getSeePdf(file){
      this.pdffile=file
      let routeUrl = '文件地址url';
      let pSrc = routeUrl + '?r=' + new Date();
      this.pdfSrc = 'static/pdf/web/viewer.html?file=' + encodeURIComponent(pSrc) + '.pdf';
    },

更多的可以了解下微软的这个查看器的官网

以上就是vue使用Office Web实现线上文件预览的详细内容,更多关于vue Office Web文件预览的资料请关注脚本之家其它相关文章!

相关文章

  • vue3如何避免样式污染的方法示例

    vue3如何避免样式污染的方法示例

    本文主要介绍了vue3如何避免样式污染的方法示例,使用scoped可以避免父组件的样式渗透到子组件中,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-09-09
  • Vue+OpenLayer为地图添加风场效果

    Vue+OpenLayer为地图添加风场效果

    这篇文章主要为大家展示了一个demo,即利用Vue和OpenLayer在地图上面添加风场效果,文中的示例代码讲解详细,感兴趣的小伙伴可以了解一下
    2022-04-04
  • Vue关于自定义事件的$event传参问题

    Vue关于自定义事件的$event传参问题

    这篇文章主要介绍了Vue关于自定义事件的$event传参问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-10-10
  • elementUI动态表单 + el-select 按要求禁用问题

    elementUI动态表单 + el-select 按要求禁用问题

    这篇文章主要介绍了elementUI动态表单 + el-select 按要求禁用问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-10-10
  • vue Element-ui input 远程搜索与修改建议显示模版的示例代码

    vue Element-ui input 远程搜索与修改建议显示模版的示例代码

    本文分为html,js和css代码给大家详细介绍了vue Element-ui input 远程搜索与修改建议显示模版功能,感兴趣的朋友一起看看吧
    2017-10-10
  • axios请求中以params或body形式传递参数的区别浅析

    axios请求中以params或body形式传递参数的区别浅析

    最近在做自己项目中,做一个非常简单的新增用户场景,但是使用原生axios发送post请求的时候,还是踩了不少坑的,下面这篇文章主要给大家介绍了关于axios请求中以params或body形式传递参数的区别的相关资料,需要的朋友可以参考下
    2023-04-04
  • Vue组件模板及组件互相引用代码实例

    Vue组件模板及组件互相引用代码实例

    这篇文章主要介绍了Vue组件模板及组件互相引用代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-03-03
  • vue Element-ui表格实现树形结构表格

    vue Element-ui表格实现树形结构表格

    这篇文章主要为大家详细介绍了vue Element-ui表格实现树形结构表格,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-06-06
  • Vue编译器optimize源码分析

    Vue编译器optimize源码分析

    这篇文章主要为大家介绍了Vue 编译器optimize源码分析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-07-07
  • 详解Vue.js动态绑定class

    详解Vue.js动态绑定class

    Vue.js的核心是一个响应的数据绑定系统,它允许我们在普通 HTML 模板中使用特殊的语法将 DOM “绑定”到底层数据。被绑定的DOM 将与数据保持同步,每当数据有改动,相应的DOM视图也会更新。基于这种特性,通过vue.js动态绑定class就变得非常简单。一起来看下吧
    2016-12-12

最新评论