2014-02-11 3 views
1
.state('add', { 
    parent: 'home', 
    url: 'add/', 
    views: { 
     'pop': { 
      templateUrl: '/views/nav.html' 
     } 
    }, 
}); 

Переход от родительского состояния «дома» до «home.add» не будет загружать шаблон «/views/nav.html» в целевой точки зрения («поп»).Угловая Router UI: переходное состояние родитель-ребенок

Все остальное работает нормально. Проблема кажется исключительной с дочерними состояниями.

я уже пробовал так:

.state('home.add', { 
    url: 'add/', 
    views: { 
     'pop': { 
      templateUrl: '/views/nav.html' 
     } 
    }, 
}); 

Не работает, как хорошо. (В этом случае я изменил ui-sref = "add" на ui-sref = "home.add").

Оба примера изменяют URL-адрес URL-адреса состояния, но, похоже, не переходят между состояниями и не отображают какие-либо представления из нового состояния (если у него есть родительский элемент).

спасибо.

@citizenslave исправил мою проблему, спасибо!

.state('add', { 
    parent: 'home', 
    url: 'add/', 
    views: { 
     '[email protected]': { 
      templateUrl: '/views/nav.html' 
     } 
    }, 
}); 
+0

В вашем шаблоне из состояния 'home' есть' ui-view = 'pop'', чтобы вставить шаблоны дочерних состояний? Если нет, и вы используете '' '' '' '' '' '' State '' ', вы должны обратиться к нему в соответствующем состоянии. Вы можете ссылаться на него абсолютно с помощью '' pop @ home''. [UI-Router Wiki] (https://github.com/angular-ui/ui-router/wiki/Multiple-Named-Views) – citizenslave

+1

@citizenslave Спасибо, человек! ссылаясь на представление «pop @» сделал это! Большое спасибо ;) – gugiserman

ответ

1

Ваш шаблон из домашнего государства должно иметь ui-view='pop' для вставки ребенка государственных шаблонов в. Если нет, и вы используете вид домашнего состояния 'pop', вам необходимо обратиться к нему в соответствующем состоянии. Вы можете ссылаться на него абсолютно с '[email protected]'. UI-Router Wiki

Смежные вопросы