2016-09-17 133 views
0

我有以下的状态声明(角v1.5.5):角UI路由器嵌套的状态 - 不能指定父

$stateProvider 
    .state('appPublic', { 
     abstract: true, 
     data: { restricted : false } 
    }) 
    .state('home', { 
     url: '/', 
     parent: 'appPublic', 
     templateUrl: 'app/views/main.html', 
     controller: 'mainCtrl' 
    }); 

当我打开我的网站,我没有看到主HTML内容(home状态)。但是,当我删除parent: 'appPublic'声明 - 它的作品。那么,为什么我不能指定国家的父母?

+0

这是奇怪的,如果去掉'抽象会发生什么:TRUE'? – AndreaM16

+0

好吧,没有什么变化 – Tony

回答

2

每个家长都必须为其子女提供查看目标(如果使用未命名的视图,即父级不会被绝对视图命名跳过 - Angularjs ui-router not reaching child controller。所以这应该工作

.state('appPublic', { 
    abstract: true, 
    data: { restricted : false }, 
    template: '<div ui-view=""></div' 
}) 

现在,子视图(未命名视图)将被放置在ui-view目标,在父母的模板声明

1

试试这个:

$routeProvider.when('/userLogin', 
          { 
           templateUrl: 'WebrtcLogin.html', 
           controller: 'UserLoginController' 
          })