Я уверен, что это снова что-то глупое. Я изучаю angularjs, поэтому я не получаю полный охват, но я добираюсь туда. Я все испробовал и действительно искал все, что мог найти, но ничего не работало.Angularjs rootcope не обновляется ngClass
Я пытаюсь сделать ng-class = "..." в моем файле макета, но выражение установлено в моем контроллере, но каким-то образом оно не отображается. Он отображается, когда я помещаю его в файл ng-view. Я получаю, что он только отображает часть файла, но я хочу, чтобы он также отображал ng-класс на ng-view. Возможно ли это, или проще просто вставить div внутри частичного html-файла.
Простой HTML-файл
<body>
<ng-view ng-class="{ 'splash': splash=='splash' }"></ng-view>
</body>
Мой контроллер
angular.module('xxx.splash')
.controller('IndexCtrl', function($scope, $rootScope, config) {
$rootScope.splash = 'splash';
$scope.login = function(e) {
alert('Soon. How soon? Very soon.');
}
});
Почему это не называется " $ rootScope "со стороны html? –
@DavidKarlsson, потому что это уже область. Каждая область имеет атрибут '$ root', указывающий на' $ rootScope', на шаблоне вы получаете некоторую область действия, которая также имеет этот указатель, отсюда и название. Хотя это может быть менее запутанным, если бы оно было переименовано ... – estani