iframe 本地的PDF展示,地址src的获取

4 篇文章 0 订阅

iframe 本地的PDF展示,地址src的获取

1、H5 iframe 本地PDF展示

获取本地pdf文件路径及名称:

'use strict'
const Controller = require('egg').Controller;
const fs = require("fs");
const path = require("path");
class PDFDownload extends Controller {
    async getPDFData({ctx}) {
        let {app} = this;
        try {
            let dir = '../documents/pdf', //相较于当前文件的pdf夹文件路径,pdf文件夹下有all文件夹
                data = {
                all:[]
                }
            fs.readdirSync(dir).forEach((file) => {  //file 底下文件夹名
                var pathname = path.join(dir, file)
                if (file == "all") {
                    fs.readdirSync(pathname).forEach((file2) => {
                        var pathname2 = path.join(pathname, file2)
                        data[file].push({name: file2, path: pathname2.replace("..", "")});
                        //path就是相对路路径,name是文件名
                    })
                }
            })
            return data
        } catch (error) {
            return {error: error.toString()};
        }
    }
}

module.exports = PDFDownload 

iframe展示:

<div v-for="(item,index) in pdfData" :key="index">
 <iframe :src="item.path"  name="valueName" frameborder="0"  :style="{ height: height-70 + 'px', width: '100%' }"></iframe>
 </div>

2、使用本地host + 相对路径

<template>
	<div>
		<iframe :src="src" style="height:100%;width:100%"></iframe>
	</div>
</template>
export defalut{
	..
	data(){
	  return(){
	  src:""
	  }
	 },
	 method:{
		async getData(){
		   let host = window.location.host
		   this.host = "http://" + host + "/路径/路径/文件名.pdf"
		}
	},
	mounted(){
	this.getData()
	
	}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值