angular已经用了一段时间了,最近在做路由跳转的时候对url所带的参数问题进行了点研究,做一下笔记哦。
首先,angular本身就有获取url参数的服务,$location,比如 href="abc.htnl?a=1&b=2",可以利用$location.search() 把a=1&b=2转换成了对象后拿到,其实我感觉这种方法又简单有直观,而且大家在使用的时候不用沟通都会用,我们公司最后为了大家传参时候简单,易懂,用的这种方法。
可是,作为一个前端,不用点ui.router的方式有点说不过去了,所以。。。
<a ui-sref="home({a:5,b:6})">链接</a>
m1.config(function($stateProvider){
$stateProvider.state('home',{
url:'/home/:a/:b',
template: '<h1>Welcome to UI-Router Demo</h1>',
controller:function($stateParams,$location){
console.log($stateParams.a,$stateParams.b);
}
});
});
这样就可以取到了参数,是不是感觉很麻烦啊,呵呵。。。
麻烦归麻烦,但是其实他还有很多功能,太复杂的我也不懂,贴一个看人家写的吧,可以参入正则表达式哦 url: '/{bookType:[0-9]{1,4}}',像这种写法,我也没有真正的去验证,等有机会遇到的时候在研究吧。。。
不写了,赶紧工作了。。。。。。