#angular #typescript #grid #syncfusion
Вопрос:
У меня есть сетка syncfusion, в которой есть повторяющиеся данные на уровне столбцов, но я не хочу показывать повторяющиеся данные, за исключением первого вхождения. Таким образом, это даст мне вид дерева, пожалуйста, обратитесь к изображению ниже.
Как я могу этого достичь?
Комментарии:
1. Как выглядит ваша структура данных?
2. @robbieAreBest это будут плоские данные, как показано ниже
3. [ {отдел: ‘Отдел 1’,класс: ‘Класс 1’,подКласс: ‘Подкласс 1’}, {отдел: ‘Отдел 1’,класс: ‘Класс 1’,подКласс: ‘Подкласс 2’}, {отдел: ‘Отдел 1’,класс: ‘Класс 2’,подКласс: ‘Подкласс 3’}, {отдел: ‘Отдел 1’,класс: ‘Класс 2’,подКласс: ‘Подкласс 4’} ]
Ответ №1:
Сетка Syncfusion EJ2 по умолчанию отображает базовые данные, включая повторяющиеся значения полей в определенных столбцах. Если вам нужно очистить повторяющиеся ячейки, то это нужно будет сделать на уровне пользовательского интерфейса, динамически принимая значение каждого столбца и сравнивая его с другими значениями в текущем представлении и удаляя его в случае дублирования. Теперь, если подкачка включена(размер страницы по умолчанию «12») и имеется около 10 столбцов, то этот цикл сравнения должен выполняться примерно 12 * 10 = 120 раз. И цикл будет увеличиваться в зависимости от увеличения размера страницы и общего количества столбцов. Это приведет к снижению производительности при наличии большого объема данных и полей.
Поэтому, чтобы избежать этого, если вам нужно удалить повторяющиеся значения, мы предлагаем вам удалить/очистить их непосредственно в источнике данных и привязать к сетке.