WedX - журнал о программировании и компьютерных науках

Angular UI Router загружает только первое объявленное дочернее состояние

Какое дочернее состояние я помещаю первым в настройки маршрутизации, оно и загружается. Все остальное работает просто отлично. Зависимости разрешения наследуются должным образом, представление визуализируется, а экземпляр контроллера создается. Но второе дочернее состояние полностью игнорируется...

Маршрутизация в app.coffee

$stateProvider
.state 'feed',
  abstract: true
  url: '/'
  templateUrl: 'views/feed.html'
  controller: 'FeedController'
  resolve: (a bunch of them :P)
.state 'feed.timeline',
  url: ''
  views:
    'timeline':
      templateUrl: 'views/partials/feed/timeline.html'
      controller: 'FeedTimelineController'
.state 'feed.trending',
  url: ''
  views:
    'trending':
      templateUrl: 'views/partials/feed/trending.html'
      controller: 'FeedTrendingController'

заполнители в index.html:

<div class="container">
  <div ui-view></div>
</div>

в 'views/feed.html':

<div ui-view="trending"></div>
<div ui-view="timeline"></div>

Я очень ценю любую помощь, перепробовал все, что мог придумать, и чувствовал себя измотанным после нескольких часов поиска в вики, группах, Google, stackoverflow... Спасибо!


  • Вы пытались удалить свойство url в своих дочерних состояниях или сделать их разными? Например. / тренды, / хронология 05.07.2014
  • @rawphl, который не был бы желаемым результатом, на самом деле был просто случаем дочернего состояния с двумя представлениями вместо двух отдельных дочерних состояний. Но большое спасибо за ваше время! Ценить это 05.07.2014
  • Вам нужны URL-адреса в ваших дочерних состояниях. Обычно вы оставляете один из URL-адресов дочернего состояния пустым, если родитель является абстрактным состоянием, таким образом, когда вы переходите к родителю, он по умолчанию будет использовать дочерний элемент с пустым URL-адресом. Но да, похоже, вам нужны подпредставления, а не отдельные дочерние состояния. 06.07.2014

Ответы:


1

Я не уверен, что вы правильно понимаете ui-router. Состояние в основном соответствует URL-адресу (кроме случаев, когда он абстрактный). Я предполагаю, что вы хотите иметь одно состояние, которое помещает данные в два подпредставления вашей «ленты» состояния.

$stateProvider
.state 'feed',
  abstract: true
  url: '/'
  templateUrl: 'views/feed.html'
  controller: 'FeedController'
  resolve: (a bunch of them :P)
.state 'feed.index',
  url: ''
  views:
    'timeline@feed':
      templateUrl: 'views/partials/feed/timeline.html'
      controller: 'FeedTimelineController'
    'trending@feed':
      templateUrl: 'views/partials/feed/trending.html'
      controller: 'FeedTrendingController'

Вам не нужно выбирать «feed.index» в качестве имени, но оно должно начинаться с «feed». так что это дочернее состояние.

05.07.2014
  • большое спасибо! Я чувствую себя таким глупым, глядя на решение прямо сейчас. Думаю, мне следует прекратить ночное кодирование. Еще раз спасибо, чувак 05.07.2014
  • Новые материалы

    Я хотел выучить язык программирования MVC4, но не мог выучить его раньше, потому что это выглядит сложно…
    Просто начните и учитесь самостоятельно Я хотел выучить язык программирования MVC4, но не мог выучить его раньше, потому что он кажется мне сложным, и я бросил его. Это в основном инструмент..

    Лицензии с открытым исходным кодом: руководство для разработчиков и создателей
    В динамичном мире разработки программного обеспечения открытый исходный код стал мощной парадигмой, способствующей сотрудничеству, инновациям и прогрессу, движимому сообществом. В основе..

    Объяснение документов 02: BERT
    BERT представил двухступенчатую структуру обучения: предварительное обучение и тонкая настройка. Во время предварительного обучения модель обучается на неразмеченных данных с помощью..

    Как проанализировать работу вашего классификатора?
    Не всегда просто знать, какие показатели использовать С развитием глубокого обучения все больше и больше людей учатся обучать свой первый классификатор. Но как только вы закончите..

    Работа с цепями Маркова, часть 4 (Машинное обучение)
    Нелинейные цепи Маркова с агрегатором и их приложения (arXiv) Автор : Бар Лайт Аннотация: Изучаются свойства подкласса случайных процессов, называемых дискретными нелинейными цепями Маркова..

    Crazy Laravel Livewire упростил мне создание электронной коммерции (панель администратора и API) [Часть 3]
    Как вы сегодня, ребята? В этой части мы создадим CRUD для данных о продукте. Думаю, в этой части я не буду слишком много делиться теорией, но чаще буду делиться своим кодом. Потому что..

    Использование машинного обучения и Python для классификации 1000 сезонов новичков MLB Hitter
    Чему может научиться машина, глядя на сезоны новичков 1000 игроков MLB? Это то, что исследует это приложение. В этом процессе мы будем использовать неконтролируемое обучение, чтобы..


    Для любых предложений по сайту: [email protected]