государственный контроллер реконструирован неожиданно

0

У меня два состояния:

  .state('a.b', {
    url: "",
    views: {
      "b": {
        template: require('./ab.html'),            
        controller: ABController
    }
  })
  .state('a.b.c', {
    url: "/:someid",
    views: {
      "c": {                                            
        template: require('./abc.html'),            
        controller: ABCController
    }
  })

с ab.html:

<div ui-view="c"></div>

Когда я перемещаюсь из состояния ab в состояние abc, я вижу, что ABController реконструируется, когда я перемещаюсь из состояния abc в ab, ABContoller не реконструируется.

То, чего я действительно хочу достичь, - не восстанавливать ABContoller при навигации с ab на abc или с abc на ab. Есть ли способ сделать это?

Теги:
angular-ui-router

1 ответ

0

Таким образом, ответ заключается в том, что это действительно возможно, и это то, что происходит по умолчанию, потому что, как я ожидал, ui-router тщательно отслеживает, какие состояния нужно уничтожать/создавать на основе состояний from и to.

В этом случае то, что вызвало дополнительную конструкцию, состоит в том, что два из моих состояний использовали одну и ту же переменную параметра, которая заставляла ui-router рассматривать общие элементы пути состояния для разных.

В принципе, исправление включало удаление неиспользуемого/багги-атрибута "params" из определения состояния.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню