在vue3中实现pptx、word、excel预览

插件推荐

PPTXjs
vue-office

代码

html 复制代码
<script setup lang="ts" name="home">
import { computed, nextTick, ref, onMounted } from 'vue';
//引入VueOfficeDocx组件
import VueOfficeDocx from '@vue-office/docx';
//引入VueOfficeExcel组件
import VueOfficeExcel from '@vue-office/excel';
//引入相关样式
import '@vue-office/docx/lib/index.css';
const docx = ref('/file/test.docx'); //设置文档网络地址,可以是相对地址
const excel = ref('/file/test.xlsx'); //设置excel网络地址,可以是相对地址
const pptx = ref('/file/test.pptx'); //设置ppt网络地址,可以是相对地址

const renderedHandler = () => {
  console.log('渲染完成');
};
const errorHandler = () => {
  console.log('渲染失败');
};
</script>

<template>
  <div>
    <h1>PPT文档预览</h1>
    <iframe :src="`/PPTXjs-1.21.1/index.html?file=` + pptx" width="100%" height="900" frameborder="0"></iframe>
    <h1>word文档预览</h1>
    <vue-office-docx :src="docx" style="width: 100%; height: 900px" @rendered="renderedHandler" @error="errorHandler" />
    <h1>excel预览</h1>
    <vue-office-excel
      :src="excel"
      style="width: 100%; height: 900px"
      @rendered="renderedHandler"
      @error="errorHandler"
    />
  </div>
</template>

<style scoped></style>

pptxjs 文件传递

需要在 index.html 中获取文件地址

相关推荐
念你那丝微笑13 分钟前
vue实现批量导出二维码到PDF(支持分页生成 PDF)
前端·vue.js·pdf
不太会写27 分钟前
又开始了 小程序定制
vue.js·spring boot·python·小程序
Jerry_Rod30 分钟前
vue 项目如何使用 mqtt 通信
前端·vue.js
小茴香3531 小时前
Vue 脚手架(Vue CLI)
前端·javascript·vue.js
Stringzhua1 小时前
Vue的Axios介绍【9】
前端·javascript·vue.js
siaikin2 小时前
基于 Astro Starlight 的多框架文档
前端·vue.js·markdown
monkeyhlj2 小时前
excel-mcp-server rocky linux简单部署
linux·运维·excel
EF@蛐蛐堂2 小时前
WUJIE VS QIANKUN 微前端框架选型(一)
前端·vue.js·微服务·架构
咚咚咚小柒2 小时前
【前端】用el-popover做通用悬停气泡(可设置弹框宽度)
前端·javascript·vue.js·elementui·html·scss
JAVA学习通3 小时前
OJ竞赛平台----C端题目列表
java·开发语言·jvm·vue.js·elasticsearch