Javascript 从url获取状态

Javascript 从url获取状态,javascript,angularjs,angular-ui-router,url-routing,Javascript,Angularjs,Angular Ui Router,Url Routing,要获取与特定url匹配的状态。例如,如果我有: stateProvider.state('a', { url: '/a?foo?baz' }); 我需要这样的东西: state.resolveFromUrl('/a?foo=bar&baz=qux'); // returns state 'a' 有一个$state.get方法返回所有状态的列表 例如,使用loDash,您可以 $scope.resolveFromUrl = function(url){ return _

要获取与特定url匹配的状态。例如,如果我有:

stateProvider.state('a', {
    url: '/a?foo?baz'
});
我需要这样的东西:

state.resolveFromUrl('/a?foo=bar&baz=qux'); // returns state 'a'
有一个$state.get方法返回所有状态的列表

例如,使用loDash,您可以

$scope.resolveFromUrl = function(url){
    return _.find($state.get(), {url: url});
};
有关最新问题:

$scope.resolveFromUrl = function(url){
    return _.find($state.get(), function(state){ 
        return state.url.split('?')[0].indexOf(url.split('?')[0]) === 0;
    });
};

谢谢,但这在任何情况下都不起作用。请参阅更新的问题。只需添加一些带有split和indexOf的诡计即可请参阅更新的答案。