1. query 与 params 传参

  • query

需要和配合 path 属性使用,携带参数会拼接在请求路径后,效果同 Get 请求方式


http://localhost:8033/Permission/Role/Form?productCode=crm-operate&roleId=1&roleName=admin&roleType=-1&roleDesc=%E7%AE%A1%E7%90%86%E5%91%98
  • params

需要配合 name 属性使用,参数不会携带在访问路径后,效果同 Post 请求

http://localhost:8033/Permission/Role/Form

2. 代码片演示

从页面NsTableRole 跳转NsFormRole 页面,添加编辑或删除动作都会携带参数到详情页面。



权限管理下角色管理路由配置route.js

// 一级菜单权限管理
const permissionRouter = {
path: '/Permission',
name: 'Permission',
component: () => import('@/views/Default'),
redirect: '/Permission/Configuration',
meta: {
title: '权限管理',
requireAuth: true
},
// 二级菜单:权限配置, 角色管理, 修改密码
children: [{
path: '/Permission/Role',
name: 'PermissionRole',
title: '角色管理',
component: () => import('@/views/Content'),
redirect: '/Permission/Role/Index',
children: [{
path: '/Permission/Role/Index',
name: 'PermissionRoleIndex',
component: () => import('@/views/Permission/Role')
},
{
path: '/Permission/Role/Form',
name: 'PermissionRoleForm',
title: '角色维护',
component: () => import('@/views/Permission/Role/NsFormRole')
}]
}, {
path: '/Permission/ModifyPassword',
name: 'PermissionModifyPassword',
title: '修改密码',
component: () => import('@/views/Content'),
redirect: '/Permission/ModifyPassword/Index',
children: [{
path: '/Permission/ModifyPassword/Index',
name: 'PermissionModifyPasswordIndex',
title: '修改密码',
component: () => import('@/views/Permission/ModifyPassword')
}]
}]
}
export default permissionRouter

2.1 添加角色动作(query 传参)

在页面 NsTableRole 点击添加角色,触发添加角色方法 onAddRole() 携带参数访问 path 属性映射的路由,NsFormRole 页面生命周期函数 created 获取路由携带的参数。传参效果如图



NsTableRole.vue(部分)

 methods: {
// 添加角色
onAddRole () {
this.$router.push({
path: '/Permission/Role/Form',
query: {
productCode: this.model.productCode
}
})
}
}

NsFormRole.vue(部分)

  // 生命周期函数 created
created () {
console.log(this.$route)
this.model.productCode = this.$route.query.productCode
}

2.2 编辑角色动作(params 传参)

在页面 NsTableRole 点击编辑,触发编辑角色方法 onEditRole() 携带参数访问 name 属性映射的路由,NsFormRole 页面生命周期函数 created 获取路由携带的参数。传参效果如图



NsTableRole.vue(部分)

    // 编辑角色
onEditRole (obj) {
this.$router.push({
name: 'PermissionRoleForm',
params: {
roleId: obj.roleId,
roleName: obj.roleName,
roleType: obj.roleType,
roleDesc: obj.roleDesc
}
})
}

NsFormRole.vue(部分)

  name: 'NsFormRole',
data () {
return {
model: {
roleId: '',
roleName: '',
roleType: '',
roleDesc: '',
productCode: '',
roleMenuPermission: []
}
}
},
created () {
console.log(this.$route)
this.model.productCode = this.$route.params.productCode
this.model.roleId = this.$route.params.roleId
this.model.roleDesc = this.$route.params.roleDesc
this.model.roleType = this.$route.params.roleType
this.model.roleName = this.$route.params.roleName
},
methods () {
}

Power By niaonao, The End, Thanks

Vue 页面传参方式 Query 和 Params的更多相关文章

  1. vue路由(一个包含重定向、嵌套路由、懒加载的main.js如下)and 路由跳转传参的query和params的异同

    import Vue from 'vue'import VueRouter from 'vue-router'import App from './App'Vue.use(VueRouter)cons ...

  2. vue页面传参和接参

    https://blog.csdn.net/zhouzuoluo/article/details/81259298(copy) js** this.$router.push({ name: 'Flow ...

  3. vue的传参方式和router使用技巧

    vue传参方法一 1,路由配置 { path: '/describe/:id', name: 'Describe', component: Describe } 2,使用方法 // 直接调用$rout ...

  4. 每日技术总结:vue router传参方式,js获取设备高度

    今天貌似没什么问题,23333…… 1.vue router 路由传参的方式 应用情景:从分类页(category.vue)进入商品列表页(list.vue),需要传递商品分类id(catId),商品 ...

  5. vue-router路由传参之query和params

    首先简单来说明一下$router和$route的区别 //$router : 是路由操作对象,只写对象 //$route : 路由信息对象,只读对象 //操作 路由跳转 this.$router.pu ...

  6. .net 页面传参方式总结

    一.使用Querystring Querystring是一种非常简单的传值方式,其缺点就是:安全性低.会把要传送的值显示在浏览器的地址栏中(也就是不需要保密得参数),并且在此方法中不能够传递对象,参数 ...

  7. vue页面传参

    1.传的参数是数组 传递参数的页面 let setStr = encodeURIComponent(JSON.stringify(this.tableData)); this.$router.push ...

  8. vue路由传参的三种方式区别(params,query)

    最近在做一个项目涉及到列表到详情页的参数的传递,网上搜索一下路由传参,结合自己的写法找到一种适合自己的,不过也对三种写法都有了了解,在此记录一下 <ul class="table_in ...

  9. vue路由传参的三种方式以及解决vue路由传参页面刷新参数丢失问题

    最近项目中涉及到跨页面传参数和后台进行数据交互,看到需求之后第一反应就是用路由传参来解决:Vue中给我们提供了三种路由传参方式,下面我们一个一个的来看一下: 方法一:params传参: this.$r ...

  10. vue 通过 name 和 params 进行调整页面传参刷新参数丢失问题&vue路由可选参数

    vue  通过 name 和 params 进行调整页面传参刷新参数丢失问题 router.js: export default new Router({ routes: [ { path: '/', ...

随机推荐

  1. HarmonyOS线上Codelabs系列挑战赛第二期:调用三方库,制作酷炫的视觉效果

      HarmonyOS线上Codelabs系列挑战赛正如火如荼进行中,开发者们可以通过体验基于HarmonyOS特性和能力的应用开发,快速构建有趣.有用的应用程序.火速加入,与众多开发者一起碰撞想法, ...

  2. 从ID3到LGB

    梳理一下树模型算法,从三种最基础的tree到lgb的全过程笔记 基于信息增益(Information Gain)的ID3算法 ID3算法的核心是在数据集上应用信息增益准则来进行特征选择,以此递归的构建 ...

  3. CentOS6.4中yum命令安装php5.2.17[转载未亲测]

    最近给公司部署服务器的时候发现他们提供的服务器是centos6.4系统的,装好系统和相关服务httpd,mysql,php,一跑代码,发现php5.3中的zend加密不能用,安装Zend Guard ...

  4. Scratch3自定义积木块之新增积木块

    在Scratch3.0的二次开发中,新功能的研发和扩展离不开积木块的添加,这篇主要讲解Scratch3.0中新增积木块部分 Scratch3.0中对于新增积木块有两种方式: 1. 初始化积木块方式   ...

  5. 妙用 drop-shadow 实现线条光影效果

    本文将介绍一种利用 CSS 滤镜 filter 的 drop-shadow(),实现对 HTML 元素及 SVG 元素的部分添加阴影效果,以实现一种酷炫的光影效果,用于各种不同的场景之中.通过本文,你 ...

  6. Web Audio API 第5章 音频的分析与可视化

    到目前为止,我们仅讨论了音频的合成与处理,但这仅是 Web Audio API 提供的一半功能.另一半功能则是音频的分析,它播放起来应该是什么样子的.它最典型的例子就是音频可视化,但其实有更多的其它应 ...

  7. HL7传输协议

    HL7消息通过各种TCP/IP传输发送,其中一些包括: 下层协议(LLP) 文件传输协议(FTP) 简单对象访问协议(SOAP) 简单邮件传输协议(SMTP) 尽管HL7可以使用多种传输协议进行数据传 ...

  8. 性能提升40%!阿里云神龙大数据加速引擎获TPCx-BB世界排名第一

    ​简介:神龙大数据加速引擎,针对大数据常用组件,如Spark.Hadoop.Alluxio等,结合阿里云神龙架构的特性,进行软硬一体化优化,形成独一无二的性能优势,最终,使复杂SQL查询场景性能相比社 ...

  9. CDP 平台简介

    ​简介: EDC 建立在 Cloudera Data Platform(CDP) 之上,该产品结合了 Cloudera Enterprise Data Hub 和 Hortonworks Data P ...

  10. [Go] 结构体 嵌套 结构体指针 的含义

    举个例子:以下 FutureKline 这个结构体 包含了 Kline 结构体的指针,为什么不直接是 Kline 结构体. type Kline struct { Pair CurrencyPair ...