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 相关文章推荐
在jquery中处理带有命名空间的XML数据
Jun 13 Javascript
JSON 数据格式介绍
Jan 13 Javascript
jQuery(js)获取文字宽度(显示长度)示例代码
Dec 31 Javascript
Javascript定义类(class)的三种方法详解
Mar 13 Javascript
JavaScript替换当前页面的方法
Apr 03 Javascript
浅析bootstrap原理及优缺点
Mar 19 Javascript
es6学习笔记之Async函数基本教程
May 11 Javascript
js自定义瀑布流布局插件
May 16 Javascript
Vue集成Iframe页面的方法示例
Dec 12 Javascript
Webpack 4如何动态切割JS注入文件名详解
Jul 09 Javascript
用js编写留言板
Mar 17 Javascript
解决Antd 里面的select 选择框联动触发的问题
Oct 24 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中开发XML应用程序之基础篇 添加节点 删除节点 查询节点 查询节
2010/07/09 PHP
PHP图像处理之imagecreate、imagedestroy函数介绍
2014/11/19 PHP
ThinkPHP框架里隐藏index.php
2016/04/12 PHP
ThinkPHP5.1框架页面跳转及修改跳转页面模版示例
2019/05/06 PHP
js 遍历对象的属性的代码
2011/12/29 Javascript
自己写了一个展开和收起的多更能型的js效果
2013/03/05 Javascript
javascript-表格排序(降序/反序)实现介绍(附图)
2013/05/30 Javascript
[JSF]使用DataModel处理表行事件的实例代码
2013/08/05 Javascript
jQuery ui实现动感的圆角渐变网站导航菜单效果代码
2015/08/26 Javascript
Jquery Ajax Error 调试错误的技巧
2015/11/20 Javascript
使用Sticky组件实现带sticky效果的tab导航和滚动导航的方法
2016/03/22 Javascript
bootstrapValidator表单验证插件学习
2016/12/30 Javascript
轻松理解Javascript变量的相关问题
2017/01/20 Javascript
Vue 2中ref属性的使用方法及注意事项
2017/06/12 Javascript
通过函数作用域和块级作用域看javascript的作用域链
2018/08/05 Javascript
JS中验证整数和小数的正则表达式
2018/10/08 Javascript
layer弹出层倒计时关闭的实现方法
2019/09/27 Javascript
Python利用正则表达式匹配并截取指定子串及去重的方法
2015/07/30 Python
python数据抓取分析的示例代码(python + mongodb)
2017/12/25 Python
使用pygame模块编写贪吃蛇的实例讲解
2018/02/05 Python
Python中关键字global和nonlocal的区别详解
2018/09/03 Python
基于python实现FTP文件上传与下载操作(ftp&amp;sftp协议)
2020/04/01 Python
简单了解Python多态与属性运行原理
2020/06/15 Python
Pytorch之Tensor和Numpy之间的转换的实现方法
2020/09/03 Python
python cookie反爬处理的实现
2020/11/01 Python
Html5画布_动力节点Java学院整理
2017/07/13 HTML / CSS
医疗保健专业人士购物网站:Scrubs & Beyond
2017/02/08 全球购物
团支部建设方案
2014/05/02 职场文书
法律专业自荐信
2014/06/03 职场文书
九一八事变演讲稿范文
2014/09/14 职场文书
给女朋友道歉的话大全
2015/01/20 职场文书
幼儿园小班工作总结2015
2015/04/25 职场文书
热血教师观后感
2015/06/10 职场文书
小学运动会宣传稿
2015/07/23 职场文书
2016高三毕业赠言寄语
2015/12/04 职场文书
2021年pycharm的最新安装教程及基本使用图文详解
2021/04/03 Python