vue中如何不通过路由直接获取url中的参数
2016-11-16 12:02
766 查看
前言:为什么要不通过路由直接获取url中的参数?
vue中使用路由的方式设置url参数,但是这种方式必须要在路径中附带参数,而且这个参数是需要在vue的路由中提前设置好的。
相对来说,在某些情况下直接在url后面拼接?mid=100的方式传递参数更灵活,你不需要设置路由,只需要在url后拼接参数即可,但是这种方式就需要通过javascript获取并提取url中的参数,通过传统的方式直接在页面中获取是行不通的了,因为vue中是无法通过location.search()来获取url问号之后的内容的。当然,这个问题也有解决方法,就是把获取参数的脚本代码注册成全局方法就可以了。
第一步:创建utils.js文件,并保存到项目根目录
第二步:在主js方法(main.js)中注册全局方法
第三步:vue文件中引用方法
vue中使用路由的方式设置url参数,但是这种方式必须要在路径中附带参数,而且这个参数是需要在vue的路由中提前设置好的。
相对来说,在某些情况下直接在url后面拼接?mid=100的方式传递参数更灵活,你不需要设置路由,只需要在url后拼接参数即可,但是这种方式就需要通过javascript获取并提取url中的参数,通过传统的方式直接在页面中获取是行不通的了,因为vue中是无法通过location.search()来获取url问号之后的内容的。当然,这个问题也有解决方法,就是把获取参数的脚本代码注册成全局方法就可以了。
第一步:创建utils.js文件,并保存到项目根目录
1 export default{ 2 getUrlKey:function(name){ 3 return decodeURIComponent((new RegExp('[?|&]'+name+'='+'([^&;]+?)(&|#|;|$)').exec(location.href)||[,""])[1].replace(/\+/g,'%20'))||null; 4 } 5 }
第二步:在主js方法(main.js)中注册全局方法
1 import utils from './utils' //获取url参数 2 3 Vue.prototype.$utils=utils //注册全局方法
第三步:vue文件中引用方法
1 let channel=this.$utils.getUrlKey("channel")
相关文章推荐
- vue中如何不通过路由直接获取url中的参数
- vue不通过路由直接获取url中参数的方法示例
- 如何在JSP页面上直接获取url的参数呢(不通过controller设置)?
- 如何从编码过的当前url中通过get获取参数
- Vue中的 this.$router.push() 参数获取 (通过路由传参)
- 通过url传递参数时,如何获取全部参数
- asp.net core生成路由连接,请求参数如何获取和模型绑定
- ASP.NET MVC3 通过URL路由传多个参数方法
- JavaScript如何获取网页url中的参数
- js的url中传递中文参数乱码,如何获取url中参数问题
- 如何使用javascript在html中获取url参数——很好用
- 黄聪:二、如何通过URL获取其他网页源代码内容(火狐插件扩展开发教程)
- python通过urllib2获取带有中文参数url内容的方法
- python通过urllib2获取带有中文参数url内容的方法
- 如何从页面中获取url参数
- asp.net mvc 如何在View中获取Url参数的值
- JS通过Url传递中文参数,c#获取参数
- js获取url中的参数,url中传递中文的时候通过js解码的方式
- 通过window.location.search获取页面url传递的参数