返回顶部
首页 > 资讯 > 精选 >vue路由跳转打开新窗口和关闭窗口怎么实现
  • 456
分享到

vue路由跳转打开新窗口和关闭窗口怎么实现

2023-07-06 03:07:15 456人浏览 泡泡鱼
摘要

本篇内容主要讲解“Vue路由跳转打开新窗口和关闭窗口怎么实现”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“vue路由跳转打开新窗口和关闭窗口怎么实现”吧!vue路由跳转打开新窗口和关闭窗口需求:

本篇内容主要讲解“Vue路由跳转打开新窗口和关闭窗口怎么实现”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“vue路由跳转打开新窗口和关闭窗口怎么实现”吧!

    vue路由跳转打开新窗口和关闭窗口

    需求:从当前页面跳转到其他页面时,打开一个新窗口

    比如:点击页面上的用户反馈,打开用户反馈的新页面,要使用编程式导航

    vue路由跳转打开新窗口和关闭窗口怎么实现

    编程式导航

    使用路由对象的resolve的方法解析路由,可以得到location、router、href等目标路由的信息,只要得到href就可以使用window.open打开新窗口了。

    代码如下:

        // 路由跳转新界面    userFeedback() {      // this.$router.push({ path: '/feedback' });      用push,也能实现跳转,但是不能打开新页面。      const { href } = this.$router.resolve({        path: '/feedback'      });      window.open(href, '_blank');    },

    如果是复杂的需要带参数跳转的路由,是以下写法,用query携带参数

      <template slot-scope="scope">    <el-button      size="small"      @click.stop="watchDetail(scope.row)">详情</el-button>  </template>
     watchDetail(row) {    const { href } = this.$router.resolve({      path: `/answerSituation`,      query: {        id: row.id,        paperName: this.paperName,        name: row.name,        examScore: row.examScore,        answersTime: row.answersTime      }    });    window.open(href, '_blank');  }

    window.open( )方法

    定义和用法

    open() 方法用于打开一个新的浏览器窗口或查找一个已命名的窗口。

    语法

    window.open(URL,name,specs,replace)

    第一个参数URL 

    可选。打开指定的页面的URL。如果没有指定URL,打开一个新的空白窗口

    第二个参数name

    可选。指定target属性或窗口的名称。支持以下值:

    • _blank - 在新窗口显示目标网页。这是默认

    • _self - 在当前窗口显示目标网页

    • _top - 框架网页中在上部窗口中显示目标网页(不常用)

    第三个参数

    可选参数,设置窗口参数,各参数用逗号隔开。

    关闭窗口 window.close()

    用法

    window.close();   //关闭本窗口或者<窗口对象>.close();   //关闭指定的窗口

    例子:关闭新窗口

     var mywin=window.open('Http://www.xxx.com'); //将新打的窗口对象,存储在变量mywin中 mywin.close();

    vue路由跳转打开新窗口(被浏览器拦截)

    今天做了一个功能是点击按钮路由跳转打开新的窗口页面

    第一种方法

    <router-link target="_blank" :to="{path:'/FundManger/FundProductMoney',query:{managerId:fundcode}}></router-link>"

    第二种方法

      <a @click="getGetMyPortfolioById(scope.row) ">查看</a> getGetMyPortfolioById(vals) {     getMyPortfolioById({    }).then(response = >{         const routerdata = this.$router.resolve({                   name: '组合分析以及组合持仓',                   params: { managerId: vals.fundCode }         })         const newhref = routerdata.href + '?managerId=' + vals.fundCode          window.open(newhref, '_blank')     }) }

    当我们用到第二种方法时候,是触发事件请求接口根据条件去判断在进行路由跳转,这个时候就会遇到浏览器被拦截的问题

    在接口请求的回调函数中 需要使用window.open()打开新页面,但是等接口请求成功之后,window.open()打开新页面总是被浏览器拦截,原因大概是,放在请求回调函数中的操作,被浏览器认为不是用户主动触发的事件,并且延迟1000ms ,被认为有可能是广告,于是被拦截

    解决的方法:

    在接口请求之前先打开一个空的页面

    let tempPage=window.open('' ", _blank');

    然后在回调函数中,

    tempPage.location=url;

    第二种方法(改良版) 

      <a @click="getGetMyPortfolioById(scope.row) ">查看</a>  getGetMyPortfolioById(vals) {      const tempPage = window.open('', '_blank')      getMyPortfolioById({}).then(response = >{             const routerdata = this.$router.resolve({             name: '组合分析以及组合持仓',                  params: {                       managerId: vals.fundCode                 }               })             const newhref = routerdata.href + '?managerId=' + vals.fundCode             tempPage.location = newhref      }) }

    到此,相信大家对“vue路由跳转打开新窗口和关闭窗口怎么实现”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

    --结束END--

    本文标题: vue路由跳转打开新窗口和关闭窗口怎么实现

    本文链接: https://lsjlt.com/news/357531.html(转载时请注明来源链接)

    有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

    猜你喜欢
    • vue路由跳转打开新窗口和关闭窗口怎么实现
      本篇内容主要讲解“vue路由跳转打开新窗口和关闭窗口怎么实现”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“vue路由跳转打开新窗口和关闭窗口怎么实现”吧!vue路由跳转打开新窗口和关闭窗口需求:...
      99+
      2023-07-06
    • vue路由跳转打开新窗口(window.open())和关闭窗口(window.close())
      目录vue路由跳转打开新窗口和关闭窗口编程式导航window.open( )方法关闭窗口 window.close()vue路由跳转打开新窗口(被浏览器拦截)第一种方法第二种方法第二...
      99+
      2023-05-15
      vue路由跳转 vue打开新窗口 vue关闭窗口
    • vue带参数跳转打开新页面、新窗口怎么实现
      今天小编给大家分享一下vue带参数跳转打开新页面、新窗口怎么实现的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。vue带参数跳...
      99+
      2023-07-06
    • vue 路由跳转打开新窗口被浏览器拦截问题处理
      触发事件请求接口根据条件去判断在进行路由跳转:   <a @click="getGetMyPortfolioById(scope.row) ">查看</a> ...
      99+
      2024-04-02
    • vue跳转不打开新窗口如何解决
      本篇内容主要讲解“vue跳转不打开新窗口如何解决”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“vue跳转不打开新窗口如何解决”吧!vue跳转不打开新窗口的解决办法:1、通过“console.lo...
      99+
      2023-07-05
    • vue之带参数跳转打开新页面、新窗口
      目录vue带参数跳转打开新页面、新窗口vue带参数跳转打开新页面vue带参数跳转打开新窗口vue携带参数跳转页面<router-link> 方式跳转编程方式跳转路由总结v...
      99+
      2023-05-15
      vue参数跳转 vue打开新页面 vue打开新窗口
    • java怎么实现窗口跳转
      这篇文章将为大家详细讲解有关java怎么实现窗口跳转,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。假如有两个frame,分别为frame1,frame2,frame1加个按钮实现跳转.frame1代码如下...
      99+
      2023-06-02
    • Vue在原窗口与新窗口打开外部链接的实现代码
      目录Vue如何在原窗口与新窗口打开外部链接总结补充:vue跳转外部链接vue跳转外部链接Vue如何在原窗口与新窗口打开外部链接 Vue项目中如果是页面中的内部跳转,可以用this.$...
      99+
      2023-02-02
      Vue打开外部链接 Vue新窗口打开外部链接 vue外部链接
    • html怎么实现自动打开新窗口
      今天小编给大家分享一下html怎么实现自动打开新窗口的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解...
      99+
      2024-04-02
    • ajax中怎么打开新窗口
      这期内容当中小编将会给大家带来有关ajax中怎么打开新窗口,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。代码如下:var newwindow=window.op...
      99+
      2024-04-02
    • vue怎么打开新窗口并实现传参的图文
      这篇文章主要介绍“vue怎么打开新窗口并实现传参的图文”,在日常操作中,相信很多人在vue怎么打开新窗口并实现传参的图文问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”vue怎么打开新窗口并实现传参的图文”的疑...
      99+
      2023-06-06
    • pycharm怎么打开一个新窗口
      在 pycharm 中打开新窗口:单击“文件”菜单 > “新建” > “窗口”。选择要打开的项目(可选)。新窗口将打开,包含一个新的编辑器区域和菜单栏。 如何在 PyCha...
      99+
      2024-04-17
      linux macos pycharm
    • 怎么用CSS实现在新窗口打开链接
      这篇文章给大家分享的是有关怎么用CSS实现在新窗口打开链接的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。用CSS实现在新窗口打开链接a:active {test:expression(target=”_...
      99+
      2023-06-27
    • vue跳转页面打开新窗口,并携带与接收参数方式
      目录1、携带普通类型参数2、携带复杂类型参数vue页面跳转并传参的八种方式方法一方法二方法三方法四方法五方法六方法七方法八1、携带普通类型参数 字符串、数字等。 path:要跳转新页...
      99+
      2024-04-02
    • vue跳转页面打开新窗口并携带与接收参数方式是什么
      本篇内容介绍了“vue跳转页面打开新窗口并携带与接收参数方式是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1、携带普通类型参数字符串、...
      99+
      2023-06-29
    • vue怎么实现弹窗关闭后刷新效果
      本篇内容主要讲解“vue怎么实现弹窗关闭后刷新效果”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“vue怎么实现弹窗关闭后刷新效果”吧!vue弹窗关闭后刷新效果问题列表点击进入详情时弹窗内容重新赋...
      99+
      2023-06-29
    • Vue路由跳转传参或打开新页面跳转问题怎么解决
      这篇文章主要介绍了Vue路由跳转传参或打开新页面跳转问题怎么解决的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Vue路由跳转传参或打开新页面跳转问题怎么解决文章都会有所收获,下面我们一起来看看吧。Vue路由跳转...
      99+
      2023-07-05
    • Mui如何使用jquery并且实现点击跳转新窗口
      这篇文章主要介绍Mui如何使用jquery并且实现点击跳转新窗口,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!全局插入了js代码mui('body').on('...
      99+
      2024-04-02
    • javascript中怎么实现定时打开窗口功能
      在Web开发中,有时需要在一定时间后自动打开一个新的窗口,以便向用户展示相关信息或提示。在JavaScript中,可以使用setTimeout函数来实现这一功能。setTimeout是JavaScript中的内置函数,用于设置一个定时器,在...
      99+
      2023-05-14
    • vue怎么实现拖拽窗口功能
      今天小编给大家分享一下vue怎么实现拖拽窗口功能的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。效果实现代码<templ...
      99+
      2023-06-29
    软考高级职称资格查询
    编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
    • 官方手机版

    • 微信公众号

    • 商务合作