#javascript #css #angularjs
#JavaScript #css #angularjs
Вопрос:
Я столкнулся с проблемой, используя Angular.js и директива ng-switch .
Я меняю свой стиль в своем контроллере, но он никогда не применяется в текущем представлении… :
Мой текущий вид с ng-repeat :
<button class="btn btn-default btn-lg" type="button" ng-repeat="chambre in spooler" ng-style="{{chambre.style}}">{{chambre.libelle}}</button>
Мой код контроллера :
$scope.spooler[id]["style"] = { 'background-color' : code_couleur };
И часть контроллера по умолчанию :
$scope.spooler = [{
idt_zones : "1",
libelle : "100",
id_etat : 1,
style: { 'background-color' : '#DE8C00' }
}, {
idt_zones : "2",
libelle : "101",
id_etat : 2,
style: { 'background-color' : '#00983D' }
}, {
idt_zones : "3",
libelle : "102",
id_etat : 3,
style: { 'background-color' : '#B9121B' }
}];
Когда я хочу изменить стиль элемента, цвет фона меняется в исходном коде страницы, но он никогда не применяется к элементу в представлении.
Странная проблема Спасибо за все
Cdt
Комментарии:
1. Попробуйте
style="{{chambre.style}}"
вместо ng-style ИЛИng-style="chambre.style"
Ответ №1:
как правило, вы не должны использовать {{ }} при обращении к вашим переменным внутри ng- директив (ng-click, ng-show и т. Д.)
вы могли бы изменить его на:
ng-style="chambre.style"
или вы могли бы поместить его в тег стиля:
style="{{chambre.style}}"
Ответ №2:
Это должно быть ng-style="chambre.style"
, см. Документацию