#angular #angular-reactive-forms #ngx-datatable
#angular #угловые реактивные формы #ngx-datatable
Вопрос:
У меня проблема с использованием ngx-datatable с FormControls.
У меня есть datatable, который отображает список категорий и для каждой категории список подпунктов. Когда я нажимаю на строку, содержащую категорию, это изменяет видимость строк подпунктов.
В каждой строке у меня есть флажок, и когда я нажимаю на флажок категории, он должен устанавливать флажки для всех подпунктов. Я использую FormControls для контроля состояния моих флажков.
Это работает хорошо, пока все мои категории расширены, но когда я закрываю некоторые из них и использую флажки, он не устанавливает правильные флажки.
Я привел здесь пример своей проблемы, если вы хотите это проверить: https://stackblitz.com/edit/ngx-datatable-formcontrol?file=app/demo-component.ts
Заранее спасибо!
Ответ №1:
Так же, как и функция track by в ngFor, ngx-datatable позволяет устанавливать в качестве входного свойства trackByProp вот так: [trackByProp]="'id'"
. Использование этого позволит компоненту отслеживать строки, которые скрыты / отображаются по их идентификатору, а не по их индексу, как это происходит сейчас, и именно это поведение вызывает вашу проблему — как только флажки были созданы для определенной строки, они никогда не отображаются повторноhttps://github.com/swimlane/ngx-datatable/pull/1622