vue-router传递参数的几种方式

vue-router传递参数分为两大类

  • 编程式的导航 router.push
  • 声明式的导航<router-link>

编程式的导航router.push

传递参数分为两种类型:字符串,对象

字符串

字符串的方式是直接将路由地址以字符串的方式来跳转,这种方式简单但不能传递参数

this.$router.push("home");

对象

  想要传递参数主要就是以对象的方式来写,分为两种方式:命名路由,查询参数

  1.命名路由

    命名路由的前提是在注册路由的地方给路由命名如:

    

    命名路由传递参数需要使用params来传递,这里一定要注意使用params不是query。目标页面接收传递参数也要使用params

    方法如下:

this.$router.push({ name: ‘news‘, params: { userId: 123 }})

    接收传递参数:

<template>
  <div>
    this is the news page.the transform param is {{this.$route.params.userId}}
  </div>
</template>

  2.查询参数

  查询参数就是在路由地址后面带上参数,和传统的url参数一致的,传递参数使用query而且必须配合path来传递参数而不能使用name,目标页面接收传递参数使用query

  使用方法如下:

this.$router.push({ path: ‘/news‘, query: { userId: 123 }});

  接收参数如下: 

<template>
  <div>
    this is the news page.the transform param is {{this.$route.query.userId}}
  </div>
</template>
<script>
</script>

声明式的导航

   声明式的导航和编程式的一样

  字符串

<router-link to="news">click to news page</router-link>

  对象

  1.命名路由

<router-link :to="{ name: ‘news‘, params: { userId: 1111}}">click to news page</router-link>

  2.查询参数

<router-link :to="{ path: ‘/news‘, query: { userId: 1111}}">click to news page</router-link>

  

原文地址:https://www.cnblogs.com/yuzihong/p/10387224.html

时间: 2024-08-06 23:19:00

vue-router传递参数的几种方式的相关文章

Delphi过程、函数传递参数的八种方式

Delphi过程函数传递参数的八种方式 Delphi过程.函数传递参数的八种方式,布布扣,bubuko.com

asp传递参数的几种方式

把下列代码分别加入a.asp和b.asp的<body></body>中,点提交,就可以将a.asp文本框的内容传给b.asp并显示出来 a.ASP <form action="B.asp" method="get"> <input name="ABC" type="text" /> <input name="" type="button&quo

多线程传递参数的两种方式

1 带参数的委托方法来传递参数 static void Main(string[] args) { var d = new Data { Message = "中国" }; //通过带参数的委托方法来传递参数 ParameterizedThreadStart var t2 = new Thread(ThreadMainWithParameters); t2.Start(d); System.Console.ReadLine(); } static void ThreadMainWith

(转)JSP向后台传递参数的四种方式

Jsp页面传值的方法 一.通过Form表单提交传值 客户端通过Form表单提交到服务器端,服务器端通过 Java代码 request.getParameter(String xx); 来取得参数(xx)为参数名称.通过get/post方式进行提交 二.通过隐藏域传值 通过在表单中加入一个隐藏域来提交到服务器端,这种方式的好处是可以在客户端加入一些自己想要加入的参数,以便得到相应的值. 客户端代码: Java代码 <input type="hidden" name="id

SpringMVC jsp页面向controller传递参数的五种方式

一共是五种传参方式: 一:直接将请求参数名作为Controller中方法的形参 public  String login (String username,String password)   : 解释:括号中的参数必须与页面Form 表单中的name 名字相同 二:使用@RequestParam 绑定请求参数参数值 举例:public String login(RequestParam ("username") String name) : 解释:双引号中的username 必须与页

ionic项目中跨页面传递参数的几种方式

1.使用AngularJS自带的$cacheFactory服务 $cacheFactory 从字面直译即为缓存工厂,可以用它来生成缓存对象,缓存对象以key-value的方式进行数据的存储 在整个应用内是单例的,可以在service或者controller中注入这个服务,然后就可以用它来自由的存取对象以及各种变量,下面是一个简单例子 .controller('AppCtrl', function ($scope, $ionicModal, $timeout, $cacheFactory) { v

hibernate createQuery查询传递参数的两种方式

String hql = "from InventoryTask it where it.orgId=:orgId"; Session session = getSession(); Query query=session.createQuery(hql); query.setString("orgId",orgId); List list = query.list(); if(list!=null&&list.size()!=0){ return

Knockout事件传递参数的几种方式

<!DOCTYPE html> <html> <head> <meta name="viewport" content="width=device-width" /> <title>Ko Test</title> </head> <body> <h1>方法1</h1> <ul data-bind="foreach: fruits&q

Vue - 路由传递参数

Vue 2.0  路由传递参数 Vue 路由传递参数 有两种方式: 一.用name传递参数 两步完成用name传值并显示在模板里: 在路由文件src/router/index.js里配置name属性. 1 2 3 4 5 6 7 routes: [ { path: '/', name: 'Hello', component: Hello } ] 模板里(src/App.vue)用$router.name的形势接收,比如直接在模板中显示: 1 <p>{{ $route.name}}</p&