总是在ng-view外显示1个视图 - angular

问题描述:

我有以下控制器,并且我希望在所有页面(即所有其他视图)上都显示CategoryController的模板。该应用程序显示所有类别与此控制器,当您单击一个类别它显示该类别中的所有书籍,然后当您单击书籍时,它会显示书籍的详细信息。我希望总是显示类别,这可以做ng-include?总是在ng-view外显示1个视图 - angular

app.config(function ($routeProvider) { 
    $routeProvider 
    .when('/books', { 
     controller: 'BookshelfController', 
     templateUrl: 'views/bookshelf.html' 
    }) 
    .when('/books/:bookId', { 
     controller: 'BookController', 
     templateUrl: 'views/book.html' 
    }) 
    .when('/categories', { 
     controller: 'CategoryController', 
     templateUrl: 'views/categories.html' 
    }) 
    .when('/categories/:categoryId', { 
    controller: 'BookCategoryController', 
    templateUrl: 'views/booksincategory.html' 
}) 
    .otherwise({ 
     redirectTo: '/books' 
    }); 
}); 

HTML

<div class="main"> 
     <div class="container"> 
      <div ng-view></div> 
     </div> 
    </div> 
+0

这是更好的使用_angular ui路由器多个views_看到[这](https://github.com/angular-ui/ui-router/wiki/Multiple-Named-Views) –

由于@Hadi说,使用角UI的路由器,或者为什么不干脆直接放在控制器通过视图时,它应该在每一页上显示,无论如何?

<div class="main"> 
    <div class="container"> 
     <div ng-controller="CategoryController"></div> 
     <div ng-view></div> 
    </div> 
</div>