У меня есть директива, которая создает поле ввода. Мне нужно установить для атрибута ng-model этого поля ввода значение переменной $rootScope. Причина этого в том, что я хочу, чтобы поле ввода было в макете и привязывалось к разным моделям в зависимости от того, какая страница загружена. Я решил установить эту глобальную переменную в каждом контроллере и получить к ней доступ в директиве.
ATM переменная жестко закодирована
App.run(function($rootScope){
$rootScope.mymodel = 'search.name';
})
И директива
Directives.directive('inputFilter', function(){
return{
restrict: 'E',
replace:true,
controller: function($scope, $rootScope){
console.log($scope.mymodel);
console.log($rootScope.mymodel)
},
template: '<input class="filter" type="text" ng-model="mymodel" placeholder="Nach filtern">'
}
});
Он отображается как
<input class="filter ng-pristine ng-valid" type="text" ng-model="mymodel" placeholder="Filter">
а текст внутри поля ввода является значением переменной mymodel. В console.log показано
search.name
search.name
Может ли кто-нибудь пролить свет на этот вопрос?