当前位置: 首页 > news >正文

wordpress 直接拖拽式建站房屋信息网站

wordpress 直接拖拽式建站,房屋信息网站,电商平台seo,广东智慧团建注册登录入口【vue3vue-pdf-embed】实现PDF图片预览项目背景项目代码分析代码项目背景 技术栈#xff1a;vue3Tselementplus 需要实现PDF和图片预览 图片预览很好解决了#xff0c;可以用elementplus 自带的组件el-image 可实现 PDF预览可以用搜了一圈#xff0c;有两个方案#xff0c… 【vue3vue-pdf-embed】实现PDF图片预览项目背景项目代码分析代码项目背景 技术栈vue3Tselementplus 需要实现PDF和图片预览 图片预览很好解决了可以用elementplus 自带的组件el-image 可实现 PDF预览可以用搜了一圈有两个方案一个是vue-office-pdf另一个是vue-pdf-embed 由于项目需求只需要做预览且只支持 PDF也不需要什么高级文档操作功能所以我就采用了vue-pdf-embed 项目代码 html 代码 my-dialog refmyDialogRef width60% max-height70vhdiv v-loadingdialogLoading classreviewDivel-image v-ifimageDialogVisible :srcimageSrc stylemax-width: 100%; fitcontain /vue-pdf-embed v-else refpdfRef :sourceimageSrc :pagepdfPage password-requestedhandlePasswordRequest renderedhandleDocumentRender /div v-show!imageDialogVisible pageCount classtext-centerel-button :disabledpdfPage 1 clickpdfPage--❮/el-buttonspan classmx-4{{ pdfPage }} / {{ pageCount }}/spanel-button :disabledpdfPage pageCount clickpdfPage❯/el-button/div/div /my-dialogjs 代码 const imageSrc ref() const myDialogRef ref() const imageDialogVisible refboolean(false) const dialogLoading refboolean(false) const openFileDialog (file: any) {dialogLoading.value true// 释放之前创建的对象URLif (imageSrc.value) {URL?.revokeObjectURL(imageSrc.value)}// 创建新的对象URLif (file.raw) {// 本地预览imageSrc.value URL?.createObjectURL(file.raw)dialogLoading.value false} else {// 编辑远程预览const targetFile getTargetFile.value(file)apiDownloadFile(targetFile[0].fileDocumentId).then((response: any) {imageSrc.value response.request.responseURLsetTimeout(() {dialogLoading.value false}, 1000)})}const isImage judgeIcon(file) imagemyDialogRef.value?.openDialog(isImage ? 图片预览 : PDF预览)if (isImage) {imageDialogVisible.value true} else {imageDialogVisible.value false} }const pdfPage refnumber(1) const pageCount refnumber(0) const pdfRef ref() function handleDocumentRender () {pageCount.value pdfRef.value?.doc?.numPages // 这里是重点 }function handlePasswordRequest (callback: any, retry: boolean) {callback(prompt(retry ? Enter password again : Enter password)) }分析代码 首先预览有本地预览和远程预览 本地预览顾名思义就是在本地上传还没有调接口的PDF或图片进行预览这时候通过URL 接口里面的静态方法并往里面传file.raw 便可得到 本地PDF/图片链接了 具体请看这里URL:createObjectURL() 静态方法远程预览即从后端接口返回回来的PDF/图片 进行预览这时候需要先调用下载接口 接口会返回 对应的链接 通过以上两步可以把 需要传递的 source 的值搞定 需要PDF很大有很多页这时候预览需要分页但是分页的时候有一个问题就是一直找不到对应的总页码即pageCount 有看很多文章要么通过rendered方法传参但文档根据不支持传参 vue-pdf-embed 后面自己试了一下居然 使用 ref 的方式 pdfRef.value?.doc?.numPages ,拿到了总页码至此后面就很容易解决了
http://www.zqtcl.cn/news/367887/

相关文章:

  • 如何对网站进行爬虫页面设计存在的问题
  • 知名网站建设加盟合作企业邮箱如何登录
  • asp net mvc做网站软文推广是什么
  • 张家口住房和城乡建设厅网站如何做点击赚钱的网站
  • 网站在建设中无法访问贵州碧江区住房和城乡建设局网站
  • 营销类网站 英文东莞正规的免费网站优化
  • 柳州网站推广最好的公司百度seo优化培训
  • 哈尔滨门户网站建站哪个网站做农产品
  • 网站行业关键词如何建设网站
  • wordpress插件目录504wordpress访问优化插件
  • 固定ip做网站网页源码提取工具
  • php网站模板源码下载公司网络营销推广软件
  • 免费电子版个人简历模板温州快速排名优化
  • 网站修改titlewordpress显示icp备案
  • 中国国际贸易单一窗口登录南京专业网站优化公司
  • 手机网站建设合同wordpress案例分析
  • 深圳做网站什么公司好广州电商小程序开发
  • 郑州高新区做网站的公司如何欣赏网站
  • 网站做维恩图做网站的公司杭州
  • 柳州公司网站制作公司wordpress 网店
  • 网站增加栏目费用在网站开发中如何设置登录
  • 怎样用php做网站百度推广联系人
  • 怎么建立手机网站如何申请公司域名
  • 营销型网站怎么收费邓州企业网站
  • 北京建设官方网站邢台网站维护
  • 新余网站制作网站开发工资咋样
  • 襄阳网站建设外包自己做一个网站
  • 网站域名的后缀wordpress文章归类
  • 查询企业信息的官方网站大连建设网站公司
  • 网站建设 全包专业建设规划方案模板