vue跳转外部链接的方法

有些时候我们需要从我们的vue项目中跳转到第三方的链接。
坑1不能用路由跳
这时用vue的路由跳转肯定是不行的,因为vue的路由跳转只是自己项目内部的跳转,当要跳转到第三方链接时,比如跳转到百度"www.baidu.com",这已经跳出vue项目了所以不能用路由跳,应该用window.location.href或者.window.open(a,b) a:外部链接 ,b:打开方式(“_blank”新开一个窗口;“_self”覆盖当前窗口)方式跳转
坑2不能直接window.location.href跳
但是当我们用window.location.href这样直接打开时会出现一个很大的问题

“我们打开的外部链接会自动拼接我们的源地址,导致网址链接不正确,无法正常访问”
比如:window.location.href='www.baidu.com'
这时跳转过去的地址会是这样的:http://localhost:8080/#/www.baidu.com从而导致跳转失败

解决办法1

let url = 'www.baidu.com' // 这里的地址前面就不用加协议了'http:// 或者 https://' 下面一句话就是处理这个的。

let path = window.location.protocol +  "//" + url

window.location.href = path

封装方法

// 点击方法 url为传入的第三方链接或网址 如'www.baidu.com' url前面不要加协议哦!
jumpUrl(url){
  let path=window.location.protocol+'//'+url
  window.location.href=path
},

解决办法2

window.open(url, target)
  • url : 要跳转的网址 如: http://www.baidu.com
  • target: 跳转方式,‘_blank’:在新的窗口打开;‘_self’:在当前页面打开
    我是参考这位大佬的
  • 16
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jieyucx

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值