Vue this.$router.push(参数)实现页面跳转操作


Posted in Javascript onSeptember 09, 2020

很多情况下,我们在执行点击按钮跳转页面之前还会执行一系列方法,这时可以使用 this.$router.push(location) 来修改 url,完成跳转。

push 后面可以是对象,也可以是字符串:

// 字符串
this.$router.push('/home/first')
// 对象
this.$router.push({ path: '/home/first' })
// 命名的路由
this.$router.push({ name: 'home', params: { userId: wise }})

跳转页面并传递参数的方法:

1.Params

由于动态路由也是传递params的,所以在 this.$router.push() 方法中path不能和params一起使用,否则params将无效。需要用name来指定页面。

及通过路由配置的name属性访问

在路由配置文件中定义参数:

/* router.js 文件*/
import Vue from "vue";
import Router from "vue-router";
import MediaSecond from "@/views/EnterprisePage/MediaMatrix/second"; //资讯列表
 
Vue.use(Router);
export default new Router({
 routes: [ /* 进行路由配置 */
  {
    name: "MediaSecond",
    path: "/MediaSecond",
    component: MediaSecond
  },
 ]
}) 
/* 后面还需要接一空行,否则无法通过 ESlint 语法验证 */

通过name获取页面,传递params:

this.$router.push({ name: 'MediaSecond',params:{artistName:artistName,imgUrl:imgUrl,type:2} })

在目标页面通过this.$route.params获取参数:

if (this.$route.params.type == 2) {
  this.type = apis.getAtistDetails;
} else {
  this.type = apis.getMessageList;
}

2.Query

页面通过path/name和query传递参数,该实例中row为某行表格数据

this.$router.push({ name: 'DetailManagement', query: { auditID: row.id, type: '2' } });

this.$router.push({ path: '/DetailManagement', query: { auditID: row.id, type: '2' } });

在目标页面通过this.$route.query获取参数:

this.$route.query.type

补充知识:vue this.$router.push('./map');无法跳转的问题

<template>
 <div style="text-align: center">
  <el-button type="primary" style="margin-top: 40vh" @click="onLogin">登录</el-button>
 </div>
</template>
<script>
 export default {
  name: 'login',
  data () 
   return {
   }
  },
  methods: {
   onLogin:function () {
    this.$router.push('./map');
   }
  },
 }
</script>
<style scoped>
  
</style>

router中是这样引入的

import map from '@components/map'

点击事件无法跳转

2.解决方法:

改变引入方式

import map=r=>require.ensure([],()=>(require('../components/map')),'map')

这样通过静态引入就没问题了!

以上这篇Vue this.$router.push(参数)实现页面跳转操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
常用参考资料(手册)下载或者链接
Jul 22 Javascript
手机端页面rem宽度自适应脚本
May 20 Javascript
js跨浏览器的事件侦听器和事件对象的使用方法
Dec 17 Javascript
jquery点击改变class并toggle的实现代码
May 15 Javascript
js实现图片懒加载效果
Jul 17 Javascript
JQuery元素快速查找与操作
Apr 22 jQuery
看看“疫苗查询”小程序有温度的代码
Jul 31 Javascript
使用rollup打包JS的方法步骤
Dec 05 Javascript
原生js实现针对Dom节点的CRUD操作示例
Aug 26 Javascript
three.js利用gpu选取物体并计算交点位置的方法示例
Nov 25 Javascript
Vue axios获取token临时令牌封装案例
Sep 11 Javascript
原型和原型链 prototype和proto的区别详情
Nov 02 Javascript
Vue页面跳转传递参数及接收方式
Sep 09 #Javascript
微信小程序实现身份证取景框拍摄
Sep 09 #Javascript
vue实现点击按钮“查看详情”弹窗展示详情列表操作
Sep 09 #Javascript
微信小程序实现点击生成随机验证码
Sep 09 #Javascript
vue 获取元素额外生成的data-v-xxx操作
Sep 09 #Javascript
vue移动端写的拖拽功能示例代码
Sep 09 #Javascript
vue路由的配置和页面切换详解
Sep 09 #Javascript
You might like
php生成数组的使用示例 php全组合算法
2014/01/16 PHP
大家须知简单的php性能优化注意点
2016/01/04 PHP
jquery 可排列的表实现代码
2009/11/13 Javascript
GWT中复制到剪贴板 js+flash实现复制 兼容性比较好
2010/03/07 Javascript
基于NodeJS的前后端分离的思考与实践(二)模版探索
2014/09/26 NodeJs
javascript中DOM复选框选择用法实例
2015/05/14 Javascript
使用jQuery操作HTML的table表格的实例解析
2016/03/13 Javascript
jQuery实现点击表格单元格就可以编辑内容的方法【测试可用】
2016/08/01 Javascript
JavaScript实现通过select标签跳转网页的方法
2016/09/29 Javascript
Jquery树插件zTree实现菜单树
2017/01/24 Javascript
Mongoose中document与object的区别示例详解
2017/09/18 Javascript
基于vue v-for 循环复选框-默认勾选第一个的实现方法
2018/03/03 Javascript
使用Angular-CLI构建NPM包的方法
2018/09/07 Javascript
vue组件实践之可搜索下拉框功能
2018/11/25 Javascript
ES6基础之解构赋值(destructuring assignment)
2019/02/21 Javascript
详解JWT token心得与使用实例
2019/08/02 Javascript
Vue的click事件防抖和节流处理详解
2019/11/13 Javascript
Node.js创建一个Express服务的方法详解
2020/01/06 Javascript
[01:07:47]Secret vs Optic Supermajor 胜者组 BO3 第一场 6.4
2018/06/05 DOTA
[01:14]英雄,所敬略同——2018完美盛典宣传视频4K
2018/12/05 DOTA
python简易远程控制单线程版
2018/06/20 Python
Flask入门之上传文件到服务器的方法示例
2018/07/18 Python
Python自动化操作实现图例绘制
2020/07/09 Python
美国女士内衣在线折扣商店:One Hanes Place
2019/03/24 全球购物
美国在线轮胎零售商:SimpleTire
2019/04/08 全球购物
一套C++笔试题面试题
2012/06/06 面试题
北京一家公司的.net开发工程师笔试题
2012/04/17 面试题
教师实习自我鉴定
2013/12/11 职场文书
法制宣传月活动方案
2014/05/11 职场文书
关于环保的建议书
2014/05/12 职场文书
交通运输局四风问题对照检查材料思想汇报
2014/10/09 职场文书
vue实现锚点定位功能
2021/06/29 Vue.js
mysql分表之后如何平滑上线详解
2021/11/01 MySQL
python 离散点图画法的实现
2022/04/01 Python
安装Windows Server 2012 R2企业版操作系统并设置好相关参数
2022/04/29 Servers
阿里云国际版 使用Nginx作为HTTPS转发代理服务器
2022/05/11 Servers