一、ui-router 路由地址处理大小写
默认ui-router的state()方法指定路由配置对大小写敏感。
解决方案一:$urlRouterProvider服务的rule() 方法提供处理客户端连接的接口,
app.config(function ($urlRouterProvider) { // Here's an example of how you might allow case insensitive urls // Note that this is an example,and you may also use // $urlMatcherFactory.caseInsensitive(true); for a similar result. $urlRouterProvider.rule(function ($injector,$location) { //what this function returns will be set as the $location.url var path = $location.path(),normalized = path.toLowerCase(); if (path != normalized) { //instead of returning a new url string,I'll just change the $location.path directly so I don't have to worry about constructing a new url string and so a new state change is not triggered $location.replace().path(normalized); } }); });
这样处理,浏览器的地址栏总会显示小写,但是这是除了动态参数之外的部分。
相关文章:
https://github.com/angular-ui/ui-router/wiki/URL-Routing
原文链接:https://www.f2er.com/angularjs/148261.html