vue项目中遇到一个打印的功能。思考之后决定点击按钮,跳转到一个HTML页面(后台写的),利用window.print()方法调用浏览器的打印的功能。

所以,现在的问题是,怎样跳转到外部链接。开发vue项目的人都知道,vue项目会分为三个版本:开发,测试,生产,我们可以在config文件夹下面的dev.env.js,prod.env.js,test.env.js配置路径。

所以我们就会遇到跨域的问题。

js:

let Path = process.env.APP_EXCEL_PATH+'print.html?name=1'

window.open(Path)

一开始利用地址栏传参的方式,就是直接在路径上添加参数,然后再HTML文件中获取地址参数渲染就行:

HTML中的js:

window.οnlοad=function(){

var n = getParam("name");

document.getElementById("name").innerHTML = n;

}

function getParam(paramName) {

paramValue = "", isFound = !1;

if (this.location.search.indexOf("?") == 0 && this.location.search.indexOf("=") > 1) {

arrSource = unescape(this.location.search).substring(1, this.location.search.length).split("&"), i = 0;

while (i < arrSource.length && !isFound) arrSource[i].indexOf("=") > 0 && arrSource[i].split("=")[0].toLowerCase() == paramName.toLowerCase() && (paramValue = arrSource[i].split("=")[1], isFound = !0), i++

}

return paramValue == "" && (paramValue = null), paramValue

}

function printme(){

document.body.innerHTML=document.getElementById('container').innerHTML+'
';

window.print();

}

之后遇到中文转码的问题,在地址栏传入中文会导致乱码问题,后来通过入参时利用encodeURI(encodeURI(name));编码,然后, HTML中利用decodeURI(getParam("name"));解码。解决问题。

之后,由于入参比较多而且中文也很多,导致地址栏参数长度过长HTML不能全部解读。至此,这个问题无法突破。

后来想到H5的本地存储,可以在跳转的先给数据存储在本地,然后再HTML中在从本地中取出来。觉得可以实现,然后发现HTMl中的数据为null,原来并没有取到本地数据,发现本地存储也有同源策略的问题,也就是跨域的问题,发现我在本地开发环境时是localhost:8080,而我跳转的页面的域名是127.0.01:8080端口,他们各自都有localStorage。原来问题就是域名,然后我打包在本地的Tomcat运行,发现可以实现。至此,问题解决。

在vue项目的组件中:

js:

let Path = process.env.APP_EXCEL_PATH+'print.html'

window.open(Path)

vue 路由跳转到外部链接

尝试了几次发现,不论怎么写外部链接,最后跳转的路径都会加上localhost:3030; 这个应该是和vue的路由有关系,最后解决方法, window.location = 'http://www.b ...

vue项目中跳转到外部链接方法

当我们在文件中,如果是vue页面中的内部跳转,可以用this.$router.push()实现,但是如果我们还用这种方法跳到外部链接,就会报错,我们一看链接的路径,原来是我们的外部链接前面加上了htt ...

vue&plus;el-menu设置了router之后如何跳转到外部链接

点击跳转到xxx 方法:(调用函数) See (e) { window.loc ...

vue项目微信分享之后路由链接被破坏怎么办

异常现象: 多页面应用,路由采用hash模式,链接带有"#". 在微信中分享到朋友圈或好友时,分享出去的路由被破坏,打开分享的链接,路由中的“#”会被去掉并追加?fromTimel ...

小程序web-view的使用&comma;跳转到外部链接~

先说一下需求,要点击榜单,跳到我们的移动web的项目的榜单页,这个不是小程序的哦,就是网页版的. 榜单的html代码:

随机推荐

Github&plus;Jekyll —— 创建个人免费博客(二)Ruby&plus;Jekyll部署

摘要: 本文中我将介绍一下如何在github上搭建个人Blog(博客),也顺便让我们掌握一下github Pages功能,另外还涉及到Jekyll技术. ======================= ...

使用NUGet自动下载&lpar;还原&rpar;项目中使用的包

签出完整项目后,在解决方案名称上点右键,选择"启用NuGet程序包还原",如下图: 出现询问,当然要点是:是 当完成后,会发现在解决方案中,多出".nuget" ...

&lbrack;转&rsqb;XSS现代WAF规则探测及绕过技术

初始测试 1.使用无害的payload,类似,,观察响应,判断应用程序是否被HTML编码,是否标签被过滤,是否过滤<>等等: 2.如果 ...

Oracel查询根据部分字段去重复

一般一个表的id是唯一的,如果除去id则会有重复数据,有时做项目时查询要求根据某几个字段去掉重复记录,并且查询保留id 以下是Oracel查询时根据部分字段去重复,例如,查询的字段包括id,Sys,C ...

Java Hour 55 Spring Framework 2

上一章节估计被官方的说明文档扯晕了,其实说白了不就是个IOC 注入的容器么,用过了微软Enterprise Library 的Unity 的我还会怕这个.自己随便写个demo, 将知识的主题框架先构建 ...

&lbrack;压缩解压缩&rsqb; SharpZip--压缩、解压缩帮助类

里面有三个类都是用于压缩和解压缩的.大家看下图片 看下面代码吧 /// /// 类说明:SharpZip /// 编 码 人:苏飞 /// 联系方式:361983679 ...

html5中的一些小知识点(CSS)

1.点击a标签周围区域就可以进入超链接: a标签 的css样式中的 display属性设置为block 就可以了 2.文字左右居中: text-align 属性值为 center 3.文字上下居中:  ...

常见的HTTP报头(头参数)

本内容摘抄自 中文译本附录C '常见的HTTP报头'. 原文作者:Leonard Ricbardson & Sam Ruby 翻译:徐涵. ...

PHP中redis的使用

redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合)和zset(有序集合).这些数据类 ...

hdu -1114(完全背包)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1114 思路:求出存钱罐装全部装满情况下硬币的最小数量,即求出硬币的最小价值.转换为最小背包的问题. # ...

vue4 跳转外部链接_vue项目跳转到外部链接相关推荐

  1. vue地址栏输入路由跳转到首页_Vue路由跳转到新页面时 默认在页面最底部 而不是最顶部 的解决...

    php截取字符串函数 public function sub_string($str, $len, $charset="utf-8") { if( !is_numeric($len ...

  2. vue dve环境static无法被外部访问_vue项目性能优化(代码层面)

    点击上方蓝字关注我哦1v-if与v-show区分使用场景 v-if是真正的条件渲染,因为它会确保在切换过程中条件块内的事件监听器和子组件适当地被销毁和重建:也是惰性的:如果在初始渲染时条件为假,则什么 ...

  3. vue打开外部页面_vue项目中嵌套外部网页

    主要有两种方法: 一.通过接口请求,然后v-html渲染,这种方法试验之后发现不行,v-html不会渲染内部页面 二.iframe的方式(解决引入成功之后获取不到引入的标签问题及跨域问题) 需要嵌套的 ...

  4. 飞书上点链接怎么指定跳转浏览器_链接示例表功能还可以这样用??

    在 CukeTest 最新版 1.6.0 中更新了一个新功能--链接示例表,能够将外部维护的测试用例数据文件直接链接到示例表中使用. 了解行为驱动(BDD)或Cucumber的同学都知道,长久以来,C ...

  5. 微信链接防封跳转系统 微信域名防封技术

    微信域名防封技术及微信域名被封解决方案. 微信又封杀我的域名了,微信域名被封怎么办? 做微信项目的兄弟们总跟我唠嗑抱怨,这个无可厚非, 微信如果不做屏蔽措施,微信里面传播传播的信息良莠不齐不治理, 肯 ...

  6. HTML--超链接--a标签-跳转

    页面跳转 一个页面跳转到另一个页面 <a href="" target="">文字或图片</a> href : 绝对地址,相对地址,根路 ...

  7. vue设置html自动跳转路由器,vue2.0项目实现路由跳转的方法详解

    一.安装 1.安装路由vue-router: npm install vue-router vue项目的依赖文件node_modules存在vue-router依赖,说明安装成功 2.vue项目引入v ...

  8. 飞书上点链接怎么指定跳转浏览器_东半球最接地气的短链接系统设计

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试资料 引言 今天下午,烟哥和同事在厕所里排队等坑的时候(人多坑少).想象 ...

  9. idea怎么跳转到源代码_mooc-IDEA 项目/文件之间跳转--002

    二.IntelliJ IDEA -项目之间跳转 1.Next Project Window :跳转到下一个项目 [ ctrl+alt+) ] 2.Previous Project Window:跳转到 ...

  10. 怎么在html中加入相对链接,html直接跳转超链接 html中怎么实现同一页面超级链接...

    html按钮button怎么加超链接 把放在a标签里,直接把链接放到标签里. 扩展资料 HTML 标签提示和注释 html 超链接如何设置点击跳转到根目录或其他目录 超链接跳转到其他的目录或者根目录一 ...

最新文章

  1. ubuntu16.04 ROS安转及RVIZ启动
  2. 旷视提双边分支网络BBN:攻坚长尾分布的现实世界任务 | CVPR 2020 Oral
  3. 领取Virmach免费Minecraft主机搭建“我的世界”服务器
  4. ubuntu18docker下安装MySQL
  5. 计算机在能源领域的应用,计算机在能源中的应用
  6. Indetifier
  7. C#类的属性遍历及属性值获取
  8. java点_java常见基础点
  9. css 文本类属性 0302
  10. 【项目相关】MVC中将WebUploader进行封装
  11. 《游戏人工智能编程》读书笔记 —— 向量的归一和点乘
  12. HackingTeam重磅炸弹: 估值超1000万美金带有军火交易性质的木马病毒以及远控源码泄露
  13. 只需一个技巧,用手机轻松拍出震撼广角风景照
  14. 商城系统源码开发技巧分享
  15. kmeans设置中心_kmeans算法
  16. 利用openpyxl在Excel文件中批量复制模板表格
  17. 茴香豆的茴字有几种写法
  18. 第十七届全国大学智能汽车竞赛竞速比赛规则
  19. Linux m4a转mp3
  20. qt有关tcpserver中读取数据时是否使用flush时的研究

热门文章

  1. winXP和win2003双系统下启动NTDETECT错误解决方法
  2. 波司登 × 阿里云 × 奇点云:教科书式的数智化转型实践
  3. PHP对接苹果支付全流程
  4. 大局观有多重要?如何拥有大局观?
  5. (附源码)spring boot基于小程序酒店疫情系统 毕业设计 091931
  6. 供应链金融运营研究 -----内容运营
  7. NR-DL PDSCH Resource allocation 下行资源分配
  8. java mongodb avg_Java-mongodb-AggregationOutput(分组、统计)
  9. 奥城大学计算机专业,2013年美国留学硕士双录取院校一览
  10. 记一次走心One 2 One沟通