[英]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.