У меня есть сайт AngularJS. Раньше index.html выглядел примерно так:
...
<div class="layout stuff headers whatever">My awesome header layout</div>
<div class="container" ng-view=""></div>
<div class="layout stuff footers whatever">My tubular footer layout</div>
...
Как правило, макет сайта определялся в элементах макета над и под представлением.
Работая с нашим дизайнером, теперь у меня есть три разных базовых макета страницы. Все исходные представления имеют одинаковый (общий) макет, но есть полдюжины новых страниц, каждая из которых имеет один из двух новых макетов.
Думаю, я мог бы переместить заголовок для каждого макета в частичный, а нижний колонтитул для каждого макета — в частичный. Затем мне нужно было бы сделать ng-include в каждом представлении, например:
<div ng-include src="'partials/layout1-header.html'"></div>
... view content here ...
<div ng-include src="'partials/layout1-footer.html'"></div>
О, мой мизерам! Это уродливо и заставляет меня чувствовать, что мне нужен душ, чтобы вытереться.
Есть ли лучшее решение? Есть ли у angular способ справиться с этим, с которым я еще не сталкивался?
Примечание. Меня не особенно интересует использование angular-ui-route... но я хочу, чтобы меня убедили.
$routeProvider
без использованияangular-ui-router
..будет намного проще, чем то, что вы пытаетесь. Пройдите учебник на сайте документации. Также обратите внимание наng-view
в документах - person charlietfl   schedule 31.10.2013