vue使用iframe嵌入网页的示例代码


Posted in Javascript onJune 09, 2020

1、列表页面:

this.$router.push({ name: 'userTemplate', params: { reportUrl: reportUrl, reportType: reportType }})

点击查看后触发事件,带入参数跳转到userTemplate页面;reportType有两种类型,0表示reportUrl是绝对网址,1表示reportUrl是本地html文件。

2、userTemplate页面:

<template>
 <div> 
  <iframe v-if="reportType==0" name = "child" id = "child" v-bind:src="reportUrl"
  width="auto" height="300"
   frameborder="0" scrolling="no" style="position:absolute;top:80px;left: 30px;"
  ></iframe>
 
 <div v-if="reportType==1" v-html="htmlContent"
 width="auto" height="300" scrolling="no" style="position:absolute;top:80px;left: 30px;"></div>
 
 </div>
</template>
 
<script>
import {
 getFile
} from '@/api/report'
export default {
 mounted() {
  /**
   * iframe-宽高自适应显示
   */
  function changeMobsfIframe() {
   const mobsf = document.getElementById('child')
   const deviceWidth = document.body.clientWidth
   const deviceHeight = document.body.clientHeight
   mobsf.style.width = (Number(deviceWidth) - 30) + 'px' // 数字是页面布局宽度差值
   mobsf.style.height = (Number(deviceHeight) - 80) + 'px' // 数字是页面布局高度差
  }
 
  changeMobsfIframe()
 
  window.onresize = function() {
   changeMobsfIframe()
  }
 },
 
 data() {
  return {
   htmlContent: '',
   reportUrl: '',
   reportType: ''
  }
 },
 created() {
  // this.fileName = '../static/file/' + this.$route.params.report_url
  this.reportUrl = this.$route.params.reportUrl
  this.reportType = this.$route.params.reportType
  if (this.reportType == 1) {
   getFile(this.reportUrl).then(res => {
    if (res.code === 200) {
     this.htmlContent = res.data
    }
   })
  }
 }
}
</script>
 
<style rel="stylesheet/scss" lang="scss" scoped>
 
</style>

后端getFile:

//读取文件
 @RequestMapping("/getFile")
  @ResponseBody
 public HttpResult getFile(String reportUrl){
  StringBuilder result = new StringBuilder();
     try{
     
     FileSystemResource resource = new FileSystemResource("D:"+File.separator+"test"+File.separator+reportUrl);
     File file = resource.getFile();
       BufferedReader br = new BufferedReader(new FileReader(file));
       String s = null;
       while((s = br.readLine())!=null){
         result.append(System.lineSeparator()+s);
       }
       br.close();  
       return HttpResult.getSuccessInstance(result);
     }catch(Exception e){
       e.printStackTrace();
       return HttpResult.getFailedInstance("读取异常");
     } 
 }

 到此这篇关于vue使用iframe嵌入网页的示例代码的文章就介绍到这了,更多相关vue使用iframe嵌入网页内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
让ie运行js时提示允许阻止内容运行的解决方法
Oct 24 Javascript
浅谈javascript中基本包装类型
Jun 03 Javascript
在Node.js应用中使用Redis的方法简介
Jun 24 Javascript
基于javascript实现按圆形排列DIV元素(一)
Dec 02 Javascript
jQuery实现动态文字搜索功能
Jan 05 Javascript
利用node.js搭建简单web服务器的方法教程
Feb 20 Javascript
JS字符串false转boolean的方法(推荐)
Mar 08 Javascript
使用vue制作探探滑动堆叠组件的实例代码
Mar 07 Javascript
微信小程序云开发 生成带参小程序码流程
May 18 Javascript
layer设置maxWidth及maxHeight解决方案
Jul 26 Javascript
使用kbone解决Vue项目同时支持小程序问题
Nov 08 Javascript
在vue中使用cookie记住用户上次选择的实例(本次例子中为下拉框)
Sep 11 Javascript
JavaScript实现区块链
Mar 14 #Javascript
iview table render集成switch开关的实例
Mar 14 #Javascript
解决Vue.js 2.0 有时双向绑定img src属性失败的问题
Mar 14 #Javascript
Vue.js 动态为img的src赋值方法
Mar 14 #Javascript
基于datepicker定义自己的angular时间组件的示例
Mar 14 #Javascript
vue 过滤器filter实例详解
Mar 14 #Javascript
vue页面切换到滚动页面显示顶部的实例
Mar 13 #Javascript
You might like
PHP简单系统数据添加以及数据删除模块源文件下载
2008/06/07 PHP
解析argc argv在php中的应用
2013/06/24 PHP
PHP手机短信验证码实现流程详解
2018/05/17 PHP
PHP常见数组排序方法小结
2018/08/20 PHP
详解new function(){}和function(){}() 区别分析
2008/03/22 Javascript
JavaScript 解析读取XML文档 实例代码
2009/07/07 Javascript
JavaScript 面向对象的之私有成员和公开成员
2010/05/04 Javascript
ExtJS 2.0 GridPanel基本表格简明教程
2010/05/25 Javascript
js DOM的学习笔记
2011/12/22 Javascript
JS localStorage实现本地缓存的方法
2013/06/22 Javascript
Javascript数组操作函数总结
2015/02/05 Javascript
jQuery实现当前页面标签高亮显示的方法
2015/03/10 Javascript
javascript显示中文日期的方法
2015/06/18 Javascript
使用get方式提交表单在地址栏里面不显示提交信息
2017/02/21 Javascript
Windows下快速搭建NodeJS本地服务器的步骤
2017/08/09 NodeJs
BootStrap Validator 根据条件在JS中添加或移除校验操作
2017/10/12 Javascript
Vue中computed与methods的区别详解
2018/03/24 Javascript
详解JavaScript中new操作符的解析和实现
2020/09/04 Javascript
element中table高度自适应的实现
2020/10/21 Javascript
JavaScript基于SVG的图片切换效果实例代码
2020/12/15 Javascript
Python+matplotlib实现填充螺旋实例
2018/01/15 Python
python hbase读取数据发送kafka的方法
2018/12/27 Python
Python利用heapq实现一个优先级队列的方法
2019/02/03 Python
世界第一曲奇连锁店:Mrs. Fields Cookies
2017/02/04 全球购物
澳大利亚排名第一的儿童在线玩具商店:Toy Galaxy
2018/10/06 全球购物
农业大学毕业生的个人自我评价
2013/10/11 职场文书
小学三年级数学教学反思
2014/01/31 职场文书
优秀毕业生事迹材料
2014/02/12 职场文书
党在我心中演讲稿
2014/09/02 职场文书
党的群众路线教育实践活动个人整改措施范文
2014/11/04 职场文书
房产公证书样本
2015/01/23 职场文书
大雁塔导游词
2015/02/04 职场文书
离婚代理词范文
2015/05/23 职场文书
Python3中PyQt5简单实现文件打开及保存
2021/06/10 Python
Java实现简易的分词器功能
2021/06/15 Java/Android
HTML页面中使两个div并排显示的实现
2022/05/15 HTML / CSS