AngularJS. Способ внедрения кастомного кода в общий шаблон

Допустим, мы хотим динамически менять заголовок страницы и подсвечивать нужную часть меню в зависимости от текущего контроллера.
Топорный способ сделать это — в каждом контроллере пихать в $rootScope переменные типа title и sitePart (для подсветки пункта главного меню). Минус — всегда есть риск забыть установить эти параметры в контроллере.
Но есть другой способ, который сводится к следующему.
Нужно указать параметры в раутере, а потом при изменении адреса в зависимости от этого параметра устанавливать значения в $rootScope.

Вот тут я написал более полный рабочий пример (для того, чтобы пример заработал, нужно открыть в новом окне):
JS Bin
Вот ещё на эту тему — http://stackoverflow.com/questions/12506329/how-to-dynamically-change-header-based-on-angularjs-partial-view

Similar Posts

LEAVE A COMMENT