Ионная вкладка застряла с первым показанным видом

Я обнаружил нежелательное поведение с ионными вкладками.

По сути, у меня есть несколько вкладок, на первой вкладке у меня есть 3 представления, одно из которых ведет к другому с tab1Initial, дающим доступ к представлению tab1internal1, и это дает доступ к представлению tab1internal2 в той же вкладке, никаких проблем там нет.

Но у меня есть другая вкладка (назовем ее второй вкладкой), которая ведет к tab1internal2 на первой вкладке, которая работает как положено, за исключением одной детали:

Если я не посетил первую вкладку и не обращаюсь к представлению tab1internal2 со второй вкладки до первой вкладки, это представление tab1internal2 остается представлением по умолчанию для первой вкладки, которое при прикосновении должно отображать представление tab1Initial, но вместо этого показывает tab1internal2, как если первое представление, отображаемое вкладкой, является тем, с которым вкладка придерживается, и это точно моя проблема.

У меня есть кодовая ручка, показывающая это поведение, https://codepen.io/Orion390/pen/yajLKa, вкладка InternalPages - первая вкладка, о которой я говорю, вкладка About - доступ к представлению internal2 на вкладке InternalPages с этой кнопкой, Легко повторить поведение, которое я объяснил.

Кстати, меня не беспокоит навигация, моя проблема только в том, что вкладка не отображает нужный мне вид при касании.

Не должно ли это

<ion-tab title="InternalPages" icon="ion-home" href="#/tab/home">
    <ion-nav-view name="home-tab"></ion-nav-view>
  </ion-tab>

Назначить этот вид по умолчанию, независимо от того, как вы перемещаетесь?

1 ответ

Решение

У меня есть простой обходной путь, состоящий в том, чтобы поместить ng-click="onTabSelected()" во вкладку и в контроллер, назначенный вкладкам:

$scope.onTabSelected = function () {
    $state.go("tab.home");
}

Таким образом, всегда касаясь вкладки, это приведет к желаемому состоянию, а не к первому показу, или что-то еще, я надеюсь, что это кому-нибудь пригодится, поведение, которое вызвало проблему, действительно похоже на ошибку в ionic.

Другие вопросы по тегам