Come posso cambiare il colore di sfondo con lo stile ng?Cambia colore di sfondo con ng-Style
questo Div che ripeterà così quello del colore è da DB. Per la plnkr ho appena fissato i colori, ma nel mio esempio è come questo:
<div class="col-md-offset-0 col-md-2" ng-repeat="type in types" style="margin-bottom:5px;">
<div class='container' divCheckbox ng-style="{'background-color':(isSelected?'{{type.color}}':'#ccc')}>
<input type='hidden' ng-model="type.show" />
<div class="label">{{type.name}}</div>
</div>
</div>
e la direttiva:
.directive('divCheckbox', function() {
return {
restrict: 'A',
link: function (scope, el, attr) {
scope.isSelected = el.find('input').val() == 'false';
el.on('click', function() {
scope.isSelected = !scope.isSelected;
scope.$apply();
});
}
}
});
Heres mia plnkr: http://plnkr.co/edit/onLA8vSbtwQu1OxZrKzT?p=preview
Tks Shomz, solo una questione, come si può accedere dalla direttiva per i dati dal DB (la riga è in ascolto al momento) perché il colore è dal DB "{{}} type.color" – Luis
Prego. Hmmm, idealmente potresti iniettare un servizio nel controller e recuperare i dati in quel modo (semplicemente assegnando il valore del colore a una variabile appropriata che stai usando nella vista). Il servizio sarebbe responsabile per il recupero dei dati dal DB. – Shomz
Shomz, basta cambiarlo in ng-style = "{'background-color' :(isSelected? '{{Type.color}}': '# ccc')} come hai detto tu, ma per qualche motivo non funziona in console non mi danno errori – Luis