Angularjs Использование ng-класса с компонентом ui-grid - PullRequest
0 голосов
/ 10 октября 2018

У меня проблемы с попыткой заставить это работать.У меня есть сетка, сгенерированная с данными из моей базы данных, и в одном из столбцов я нацелился на ее конкретное значение, назначив его для ng-модели с именем hasError1, а другой назначил ng-model для hasError2.Я пытаюсь сделать NG-класс, если они разные, чтобы дать ему конкретный класс CSS.Вот мой кодЭта сетка пользовательского интерфейса находится в моем классе контроллера.

 cellTemplate: '<div ng-model="hasError1"></div>'

cellTemplate: '<div ng-model="hasError2" ng-class="{\'amount-error\': hasError1 != hasError2}" </div>'

Я ставлю свое условие для ng-class как ng-class = "{amount-error: hasError1! = HasError2}"

amount-error - это класс css, который у меня есть, для которого я установил границу

border: 1px solid red;
border-right:none;
border-left:none;

Я также пробовал это ниже, но это не сработало.

ng-class="{1 : \'amount-error\'} [grid.getCellValue(row, grid.columns[index+12]) != grid.getCellValue(row, grid.columns[index+2])]"

1 Ответ

0 голосов
/ 12 октября 2018

Сетка имеет свою собственную выделенную область видимости, поэтому вам нужно использовать

grid.appScope

для доступа к области действия приложения

Например:

cellTemplate: '<div ng-class="{\'amount-error\': grid.appScope.hasError1 != grid.appScope.hasError2}" </div>'

или

cellTemplate:'<div ng-class="{\'amount-error\': grid.appScope.hasErrorFunc()}" </div>'

$scope.hasErrorFunc = function(){
     if(comparisonValue1 != comparisonValue2){
          return true;
     } else{
          return false;
     }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...