未解决的路线后备

时间:2014-11-25 22:05:48

标签: javascript angularjs design-patterns

在角度路线中是否有任何方法可以创建后备路线? 例如:

    $routeProvider
    .when('/a', {
        templateUrl: 'a.html',
        controller: 'aCtrl'
    })

    .when('/b', {
        templateUrl: 'b.html', 
        controller: 'bCtrl',
        resolve: {/* some resolving */},
        fallbackRoute: 'a'
    })

    .when('/c', {
        templateUrl: 'c.html',
        controller: 'cCtrl'
    })

    .when('/d', {
        templateUrl: 'd.html', 
        controller: 'dCtrl',
        resolve: {/* some resolving */},
        fallbackRoute: 'c'
    })

从示例中您可以看到,如果' / b'路线没有解决,那么它将回落到路线' / a'。

有没有这样做的模式? otherwise对我不起作用,因为a,c是不同的路线。

谢谢

1 个答案:

答案 0 :(得分:0)

根据文件: If any of the promises are rejected the $routeChangeError event is fired.

因此,您可以订阅此活动并重定向到任何其他路线(使用路线详细信息和属性)。如果您需要实施示例,请写下。