Vue实现docx/xlsx/pdf等类型文件预览功能

 更新时间:2023年02月13日 09:29:56   作者:蛰伏已久  
这篇文章主要为大家详细介绍了如何溧阳Vue实现docx/xlsx/pdf等类型文件预览功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下

都2023年了,怎么文件预览还这么难!

发现了问题之后,就想着能不能实现一个简单的VUE组件库,能够解决以上问题,让新手前端,能够非常高效的完成文件预览任务。

于是,我期望开发一个vue-office组件库,它必须满足以下3个要求

  • 使用一定要简单,对新手要友好,即传递一个文件地址,就可实现预览
  • 提供多种文件的一站式预览解决方案,解决常见的docx、excel、pdf三种文件的预览
  • 预览效果也好,不只是对内容预览,也要支持样式

要求明确了,实现就相对简单了,从github上筛选每个文档最优的预览方案,然后封装成VUE组件,但是坑还是非常多的,文章最后一部分介绍。

使用

查看demo演示

github源码

安装

有三个组件,可以分别根据需要进行安装

//docx文档预览组件
npm install @vue-office/docx

//excel文档预览组件
npm install @vue-office/excel

//pdf文档预览组件
npm install @vue-office/pdf

使用示例

docx文档的预览

<template>
  <vue-office-docx :src="docx" @rendered="rendered"/>
</template>

<script>
//引入VueOfficeDocx组件
import VueOfficeDocx from '@vue-office/docx'

export default {
  components:{
    VueOfficeDocx
  },
  data(){
    return {
      docx: 'http://static.shanhuxueyuan.com/test6.docx' //设置文档地址
    }
  },
  methods:{
    rendered(){
      console.log("渲染完成")
    }
  }
}
</script>

excel文档预览

<template>
  <vue-office-excel :src="excel" @rendered="rendered"/>
</template>

<script>
//引入VueOfficeExcel组件
import VueOfficeExcel from '@vue-office/excel'
//引入相关样式
import '@vue-office/excel/lib/index.css'

export default {
  components:{
    VueOfficeExcel
  },
  data(){
    return {
      excel: 'http://static.shanhuxueyuan.com/demo/excel.xlsx'//设置文档地址
    }
  },
  methods:{
    rendered(){
      console.log("渲染完成")
    }
  }
}
</script>

pdf文档预览

<template>
  <vue-office-pdf :src="pdf" @rendered="rendered"/>
</template>

<script>
//引入VueOfficePdf组件
import VueOfficePdf from '@vue-office/pdf'

export default {
  components:{
    VueOfficePdf
  },
  data(){
    return {
      pdf: 'http://static.shanhuxueyuan.com/test.pdf' //设置文档地址
    }
  },
  methods:{
    rendered(){
      console.log("渲染完成")
    }
  }
}
</script>

整个使用方式非常简单,基本上给定文档的src地址,或者是上传文件的ArrayBuffer、Blob格式数据就可实现预览,详细方法见github中的介绍。

到此这篇关于Vue实现docx/xlsx/pdf等类型文件预览功能的文章就介绍到这了,更多相关Vue文件预览内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • vue 实现通过手机发送短信验证码注册功能

    vue 实现通过手机发送短信验证码注册功能

    这篇文章主要介绍了vue 实现通过手机发送短信验证码注册功能的相关资料,需要的朋友可以参考下
    2018-04-04
  • React DOM diff 对比Vue DOM diff 区别详解

    React DOM diff 对比Vue DOM diff 

    这篇文章主要为大家介绍了React DOM diff 对比Vue DOM diff 区别详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-09-09
  • 从0搭建vue3组件库Input组件

    从0搭建vue3组件库Input组件

    这篇文章主要介绍了从0搭建vue3组件库Input组件,每个功能的实现代码都做了精简,方便大家快速定位到核心逻辑,接下来就开始对这些功能进行实例代码讲解,需要的朋友可以参考下
    2022-11-11
  • vue组件实现弹出框点击显示隐藏效果

    vue组件实现弹出框点击显示隐藏效果

    这篇文章主要为大家详细介绍了vue组件实现弹出框点击显示隐藏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-04-04
  • vue之数据代理详解

    vue之数据代理详解

    这篇文章主要为大家介绍了vue之数据代理,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2021-12-12
  • Vue在css中图片路径问题解决的配置方法

    Vue在css中图片路径问题解决的配置方法

    这篇文章主要为大家介绍了Vue在css中图片路径问题解决,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-06-06
  • vue-drag-chart 拖动/缩放图表组件的实例代码

    vue-drag-chart 拖动/缩放图表组件的实例代码

    这篇文章主要介绍了vue-drag-chart 拖动/缩放的图表组件的实例代码,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-04-04
  • Vue computed计算属性详细讲解

    Vue computed计算属性详细讲解

    computed是vue的配置选项,它的值是一个对象,其中可定义多个计算属性,每个计算属性就是一个函数,下面这篇文章主要给大家介绍了关于vue中计算属性computed的详细讲解,需要的朋友可以参考下
    2022-10-10
  • Vue和uniapp中该如何使用canvas详解

    Vue和uniapp中该如何使用canvas详解

    说起canvas是css3新增的标签,而饼状图又是canvas经典,我们公司现在正在用uni-app框架去研发APP,下面这篇文章主要给大家介绍了关于Vue和uniapp中该如何使用canvas的相关资料,需要的朋友可以参考下
    2022-10-10
  • Vue如何实现文件预览和下载功能的前端上传组件

    Vue如何实现文件预览和下载功能的前端上传组件

    在Vue.js项目中,使用ElementUI的el-upload组件可以轻松实现文件上传功能,通过配置组件参数和实现相应的方法,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-09-09

最新评论