2016-09-17 132 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' 
          })