Ionic framework Ionic UI路由器不适用于子视图

Ionic framework Ionic UI路由器不适用于子视图,ionic-framework,angular-ui-router,Ionic Framework,Angular Ui Router,我正在尝试创建一个非常简单的lookbook应用程序。然而,我似乎无法找到工作的路线。我尝试了这个答案来调试路由。控制台中没有显示任何内容 我正在尝试创建一个应用程序,其中用户可以在一个页面上看到多个外观,然后可以导航到相应的详细信息页面。如果爱奥尼亚还认识到细节页面是lookbook页面的子页面,那就太好了。从而在菜单栏中显示后退按钮 app.config路线设置代码: $stateProvider //Lookbook view .state('lookbook', { u

我正在尝试创建一个非常简单的lookbook应用程序。然而,我似乎无法找到工作的路线。我尝试了这个答案来调试路由。控制台中没有显示任何内容

我正在尝试创建一个应用程序,其中用户可以在一个页面上看到多个外观,然后可以导航到相应的详细信息页面。如果爱奥尼亚还认识到细节页面是lookbook页面的子页面,那就太好了。从而在菜单栏中显示后退按钮

app.config
路线设置代码:

$stateProvider

  //Lookbook view
  .state('lookbook', {
    url: '/lookbook',
    views: {
      'main': {
        templateUrl: 'templates/lookbook.html',
        controller: function () {
          console.log('Lookbook controller loaded!');
        }
      }
    }
  })

  // Details view
  .state('lookbook.brand-shirt', {
    url: '/lookbook/brand-shirt',
    views: {
      'main': {
        templateUrl: 'templates/brand/shirt.html',
        controller: function () {
          console.log('Details controller loaded!');
        }
      }
    }
  });

$urlRouterProvider.otherwise('/lookbook');
index.html
内容:

  <ion-nav-bar class="bar-stable">
    <ion-nav-back-button>
    </ion-nav-back-button>

    <ion-nav-title>
      <img class="logo" alt="Lookbook Logo" ng-src="assets/images/icons/logo.svg">
    </ion-nav-title>
  </ion-nav-bar>

  <ion-nav-view name="main">
  </ion-nav-view>

此时将显示lookbook页面。但当我导航到
/lookbook/brand shirt
时,它会返回到
/lookbook

我缺少的是什么?

在该路由中,
品牌衬衫
状态是lookbook状态(
lookbook.brand衬衫
)的子级,因为您不想在lookbook视图中加载细节,所以不需要这样做

 $stateProvider

  //Lookbook view
    .state('lookbook', {
    url: '/lookbook',
    views: {
      'main': {
        templateUrl: 'templates/lookbook.html',
        controller: function() {
          console.log('Lookbook controller loaded!');
        }
      }
    }
  })

  // Details view
  .state('brand-shirt', {
    url: '/lookbook/brand-shirt',
    views: {
      'main': {
        templateUrl: 'templates/brand/shirt.html',
        controller: function() {
          console.log('Details controller loaded!');
        }
      }
    }
  });

  $urlRouterProvider.otherwise('/lookbook');
这样做。历史记录也会起到同样的作用,因为您正在您的
'main'
ion nav视图中推送视图。因此,在应用程序开始时,
/lookbook
被加载到
main
中,当您转到
brand shirt
时,新视图位于
main
视图堆栈的上方。如果返回,您将删除详细信息视图并返回
lookbook


您的解决方案可行,但如果没有子状态,我无法通过ui路由器resolved重用父级解析的参数。您可以将对象作为参数发送到子状态,或使用服务来处理对象的保存和获取。