Angular ui-router针对未知状态的特定治疗

时间:2015-06-24 12:08:16

标签: angularjs angular-ui-router

我正在研究我必须嵌套的多个角度应用程序(如门户网站)。我的主应用程序有一个路由器,我定义了一些状态。

 $stateProvider
    .state('state1', {
        url: "/state1",
        views: {

            "area": { templateUrl: "area1.html"}
        }
    });

我的其他应用也是这样的。我想制作一个特定的脚本,如果主应用程序中主要应用程序中调用的状态未知,则可以调用该脚本,因此我可以在另一个路由器中获取URL和视图。

例如,如果主应用程序调用我的第一个路由器未知的状态state2,它将在定义它的第二个路由器中查找它。

我使用resolve的{​​{1}}选项查找了解决方案,但我不确定它是否可以这样工作。

随时询问更多详情。我尽力使其变得简短易懂:)

2 个答案:

答案 0 :(得分:2)

  

Otherwise()

上的文档
app.config(function($urlRouterProvider){
    // if the path doesn't match any of the urls you configured
    // otherwise will take care of routing the user to the specified url
    $urlRouterProvider.otherwise('/index');

    // Example of using function rule as param
    $urlRouterProvider.otherwise(function($injector, $location){
        ... some advanced code...
    });
})

答案 1 :(得分:0)

希望此代码可以帮助您:

var myApp =   angular.module('myApp', []);
myApp.config(function ($stateProvider, $urlRouterProvider) {
$urlRouterProvider.otherwise('/state1');
$urlRouterProvider.when("", "/state1");
$stateProvider
        .state('state1', {
            url: '/state1',
            templateUrl: 'state1.php'
            }
        })
        .state("state2", {
            url: "/state2",
            templateUrl: 'state2.php'
         });
});