繁体   English   中英

Angular ui-router不区分大小写的查询参数

[英]Angular ui-router case-insensitive query param

考虑这个状态定义:

$stateProvider.state("someState", {
   url: "/path?someParam",
   controller: function($stateParams){
       console.log("$stateParams", $stateParams.someParam);
   }
});

导航到/ path?someParam = abc时$stateParams.someParam按预期"abc"

导航到/ path时,我希望它是相同的吗?someparam = abc 怎么实现呢?

PS $urlMatcherFactoryProvider.caseInsensitive(true); 没解决这个问题!

继OP(Alireza Mirian)发布的内容之后,我正在使用下面的模型。 它允许各种拼写,并使其不区分大小写。

 $stateProvider.state("someState", { url: "/path?otherParam", controller: "someController", onEnter: function ($stateParams, $location) { var parameterOptions = ['parameterOne', 'paramOne', 'firstParameter']; var queryParameters = $location.search(); $stateParams.membershipId = undefined; // Loops through the query-string parameters to identify a particular parameter, using a variety of spellings, regardless of case for (var p in queryParameters) { if (queryParameters.hasOwnProperty(p) && parameterOptions.indexOf((p + "").toLowerCase()) > -1) { $stateParams.membershipId = queryParameters[p]; break; } } } }); 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM