ag-grid + angularJS заголовок и ячейки, редактируемые пользователем - PullRequest
0 голосов
/ 19 ноября 2018

Я только что начал использовать библиотеку ag-grid с angularJS для отображения некоторых табличных данных в моем приложении.Дело в том, что я хочу, чтобы пользователь мог изменять значение заголовка каждого столбца так же, как он / она может редактировать ячейки в столбце, когда мы включаем атрибут editable.При поиске решения я понял, что по умолчанию нет способа превратить заголовок в редактируемый элемент.Так что мне было интересно, какие у меня альтернативы.

Одной из моих мыслей было добавить в каждый заголовок кнопку редактирования, а при щелчке по модальному окну всплыть соответствующие поля ввода заголовка и значения ячеек его столбца.В этом случае атрибут editable не будет использоваться, поскольку редактирование ячеек будет выполняться в модальном режиме.Что-то вроде , что , но вместо строки кнопка должна быть в каждом заголовке.

Так каким образом я могу добиться чего-то подобного?Я читал о шаблоне заголовка , но на самом деле не смог найти какой-либо прямой способ приблизиться к нему.

Любые идеи / советы или другие альтернативы приветствуются.

1 Ответ

0 голосов
/ 20 ноября 2018

Создайте сервис, у которого есть массив в качестве DataSet вашей сетки, и предоставьте ему обработчики для событий CRUD в том же сервисе. Внедрите сервис в контроллер вашего модала и просмотрите сетку. После этого вызовите объект gridDataSetadd, удалите, обновите кто находится в сервисе, затем $ digest сделает остальную работу, как только DataSet будет изменен.

ОБНОВЛЕНИЕ, отвечая на комментарий

Введите ваш сервис в ваш контроллер:

Для .ts

static $inject = ['$scope','YourService'];
constructor($scope, userService: YourService) {
    this.userService.getSomething();
}

Для .js

.controller('YourCtrl', ['$scope', 'YourService', function ($scope, YourService) {
    $scope.someVar = YourService.someVar;
}])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...