AngularJS路由:路由时忽略查询参数

时间:2016-01-14 04:32:38

标签: javascript angularjs

这应该很简单,但我无法在任何地方找到合适的解决方案。

// Routing file
    ...
    .when('/pathA', templateA)
    .when('/pathB', templateB)
    .otherwise({ redirectTo: '/lollz' });

两个路径都有一堆可选的查询参数。当没有参数时页面有效,但每次传递参数时,路由器都会登陆页面/lollz。如何让路由器忽略查询参数并仅集中在子路径上?

1 个答案:

答案 0 :(得分:1)

问题出在其他地方,我错误地将查询参数传递给$location.path,如:

$location.path('/pathA?param1=aaa'); // which kept getting encoded into /pathA%3Fparams1=aaa

一旦我开始在链式search中传递查询参数,问题就消失了:

$location.path('/pathA').search({params1:'aaa'});