如何使用ui-router捕获无效URL并将其发送到Angularjs中的默认控制器/视图

时间:2015-04-21 09:13:10

标签: angularjs angular-ui-router

我设置了一些简单的状态以及无效网址的默认状态。

$stateProvider
    .state('visitor', {
        url: '/visitor',
        templateUrl: '/visitor/register.html',
        controller: 'RegisterController'
    })
    .state('member', {
        url: '/member',
        templateUrl: '/member/login.html',
        controller: 'AuthController'
    });

 $urlRouterProvider.otherwise('/visitor');

如果网址无效,我希望能够捕获它,然后将其传递到默认状态的控制器,以便我可以将其记录到某处,将其显示给用户一旦他们被重定向到默认视图,无论如何....

除了URL匹配之外,是否有任何对象通过该对象公开?

如果在请求无效URL以及状态的情况下触发,则会发生$ stateNotFound事件。唉,情况似乎并非如此。

1 个答案:

答案 0 :(得分:0)

当我看到ui-router文档时,有一个事件

找不到状态时引发的

$stateNotFound。你能看出它是否有用。以下是ui-router帮助说明的内容:

  

$ stateNotFound - v0.3.0 - 无法找到请求的状态时触发   在转换期间使用提供的州名称。活动是   广播允许任何处理者有机会处理错误   (通常通过懒惰加载未完成的状态)。