2014-01-20 2 views
0

Угловой UI-маршрутизатор работает как ожидалось, пока я не использую вложенные состояния. Например, это работает:Угловой Ui-Router с нефритовыми вложенными представлениями Broken

$urlRouterProvider.otherwise("/marketing"); 
$stateProvider 
    .state('marketing', { 
    url: '/marketing', 
    templateUrl: 'partials/marketing', 
    }) 
    .state('landing', { 
    url: '/landing', 
    templateUrl: 'partials/marketing-landing', 
    }) 
    .state('features', { 
    url: '/features', 
    templateUrl: 'partials/marketing-features', 
    }) 

И это не делает:

$urlRouterProvider.otherwise("/marketing"); 
$stateProvider 
    .state('marketing', { 
    url: '/marketing', 
    templateUrl: 'partials/marketing', 
    }) 
    .state('marketing.landing', { 
    url: '/landing', 
    templateUrl: 'partials/marketing-landing', 
    }) 
    .state('marketing.features', { 
    url: '/features', 
    templateUrl: 'partials/marketing-features', 
    }) 

В любом случае, когда ребенок URL (т.е./маркетинг/посадка.) Загружается либо через ссылку sref или прямой URL-адрес отображается только родительский частичный (частичный/маркетинг), несмотря на то, что адресная строка изменяется на URL-адрес дочернего элемента.

Index.jade:

div(ui-view) 

marketing.jade:

h1 marketing layout 

div(ui-view) 

маркетинг-landing.jade:

h1 This is the landing page 

маркетинг-features.jade:

h1 This is the features page 

Это мой первый раз, используя AngularUI. Позвольте мне узнать любую другую соответствующую информацию, которую я могу предоставить.

ответ

2

Оказалось, что ошибка Jade/bad сделана UI-Router (не уверена какая). От: https://github.com/angular-ui/ui-router/issues/247

Используйте HTML-код в своем нефритовом файле. Джейд не будет расширять его.

1

Первый .ui-view - работа правильный! Но вложенные UI-представление должно быть наценка на простом HTML, как это:

.row 
    .col-md-12 
    h4 Nested UI-VIEW 
    <div ui-view></div> 
0

Назначение пустую строку с атрибутом UI ракурса, кажется, работает для меня. Это сохраняет простой HTML из шаблона нефрита и обеспечивает возможность вложенности содержимого нефрита по умолчанию в ui-view.

.row 
    .col-md-12 
    h4 Nested UI-VIEW 
    div(ui-view='') 
     p Using this approach we can have default content before ui-view is loaded 
Смежные вопросы