如何使用angular1.6检查URL参数?

时间:2018-06-20 21:31:05

标签: angularjs url angular-ui-router location angular1.6

我遇到了需要将参数添加到URL的情况。如果我添加如下内容,则URL如果已经包含了参数,则URL混乱了

 /stackoverflow?add=true;

但是如何检查是否有任何参数并将新参数添加到其中

/stackoverflow?alreadyThere=true&add=true

谢谢

2 个答案:

答案 0 :(得分:0)

检查返回查询参数列表的$ state.params是否为空。如果为空,则添加查询参数。

答案 1 :(得分:0)

$stateChangeStart的事件$rootScope中,您可以检查URL中的参数。检查$state参数,如果存在参数,则附加新参数。

    $rootScope.$on('$stateChangeStart', function (event, toState, toParams, 
        fromState, fromParams, options) {
        if (toParams.alreadyThere) {
            event.preventDefault();
            $state.go('STACKOVERFLOW', {
                alreadyThere: toParams.alreadyThere,
                add: true
            }});
        }
    });