使用ui路由器嵌套状态和视图控制出现的内容

时间:2017-02-22 16:28:27

标签: angularjs templates angular-ui-router

是否可以使用多个命名视图控制ui-router在嵌套状态中显示的内容。

例如,如果我使用父状态来命名我的shell页面,那么我应该能够使用嵌套状态来控制在home状态和嵌套状态中出现的div / sections ...对吗?

例如

.state('home')
  url: '/',
  templateUrl: 'views/search.client.view.html'
})
.state('home.search', {
  url: 'search',
  views: {
    'logo@': {
      templateUrl: 'views/search.logo.client.view.html'
     },
    'user@': {
      templateUrl: 'views/header.authentication.client.view.html'
     },
    'jumbotron@home': {
    templateUrl: 'views/search.jumbotron.client.view.html'
       }
     'resultsui@home.search': {
     templateUrl: 'views/search.client.view.resultsui.html'
          }
        }
      })

因此,我希望徽标和用户视图在两个状态'home''home.search'上显示。但是我只希望jumbotron显示在home状态,我希望resultui显示在home.search状态。他们的div应该取代他们各自国家的另一个 - 不是这个假设是如何工作的?

然后在我的shell页面'views/search.client.view.html'中,我只是将<div ui-view""></div><div ui-view="logo@"></div>等放在我想要的位置?

更新 我想我对如何实现这一点有了更好的理解,如果有效,我会更新答案。

0 个答案:

没有答案