#javascript #angularjs
#javascript #angularjs
Вопрос:
У меня есть страница с сеткой html. Для каждого объекта я добавил идентификатор ng-style
с идентификатором.
В моем контроллере мне нужно иметь возможность устанавливать стили, зависящие от имени объекта из вызова данных.
пример "sD3","dD3"
<div id="sD3" data-ng-style="sD3" class="roundabout-rowDcol3"></div>
<div id="dD3" data-ng-style="dD3" class="grid-data-rowDcol3"></div>
Кроме использования очень большого переключателя в моем контроллере, есть ли другой способ, которым я могу захватить объект и установить стили?
Что-то вроде этого:
object = {"background-color": style.backgroundColor, color": style.color,};
Комментарии:
1. Почему бы не создать
.css
класс для каждого типа объекта ( в его собственном файле .css ) и присвоить соответствующее значение с помощью ngClass ?2. Я просто хочу настоятельно рекомендовать вам рассмотреть комментарий @Igor — это «угловой способ» делать что-то. Выполнение этого другими способами требует больше работы, сложнее в обслуживании, а не «углового» способа.
Ответ №1:
Используйте средство доступа к свойствам $scope
.
Для:
<div id="sD3" data-ng-style="sD3" class="roundabout-rowDcol3"></div>
Использование:
var id = "sD3";
$scope[id] = {"background-color": style.backgroundColor, "color": style.color,};
Комментарии:
1. Вау, спасибо, это то, что было нужно… похоже, мне нужно немного больше изучения angular..