vue url参数
PrinciplesMan 人气:0亲测可用,若有疑问请私信
获取url参数有两种情况:
情况一:内部页面之间互相传值
这里先讲情况一,因为同一项目内互相传值比较简单,假如要从A页面跳转到B页面,并传值。就要在A页面这么写
this.$router.push({name:"B",query:{ Id : this.tId , ... }})
进入B页面之后,在B页面内这么写
this.Id = this.$route.query.Id;
就能将A页面的id传入B页面,进行数据调取。
情况二:外部跳转VUE项目时自带参数
例如http://www.hahaha.com/list?Id=9#/
外部进入的url会放在VUE项目编译以后自动加 “#/” ,其中带的参数在#/之前,所以用以上方法无法获取,那么我们只能用JS的方法来获取
var url = window.location.href ; //获取当前url var dz_url = url.split('#')[0]; //获取#/之前的字符串 var cs = dz_url.split('?')[1]; //获取?之后的参数字符串 var cs_arr = cs.split('&'); //参数字符串分割为数组 var cs={}; for(var i=0;i<cs_arr.length;i++){ //遍历数组,拿到json对象 cs[cs_arr[i].split('=')[0]] = cs_arr[i].split('=')[1] } this.id = cs.id; //这样就拿到了参数中的数据
补充:vue获取URL中的参数
1 获取?后面的参数
http://192.168.1.105:8080/#/idInput?username=%22%E5%BC%A0%E4%B8%89%22
获取参数方法 let id = this.$route.query.username
2 获取不带?的URL中的参数
http://192.168.1.12:8080/#/home/newsinfo/234
在路由中配置路由
{ path: '/home/newsinfo/:id', component: Newsinfo }
.vue页面设置
<template> <router-link :to="'/home/newsinfo/' + item.id"> </template>
获取参数方法 let id = this.$route.params.id
加载全部内容