Заметил странное поведение datatable при prerender: true. Выражается в том, что если в таблице более 100 элементов, то при вызове метода showItem(id) с последующим вызовом select(id), не происходит прокрутка на элементы с id в диапазоне от 2 и до 17 в случае, когда элементы в не зоны видимости. Но при этом элемент выделяется методом select корректно, можно проскролить табличку к нужному элементу руками и убедиться в этом. Если же отключить prerender, то всё работает полностью правильно. Как бороться?
Еще заметил, что включенный prerender в разы замедляет выполнение метода datatable.parse(). Есть ли возможность как-то ускорить процесс?
Хороший вопрос, тоже хотел бы узнать на него ответ
Я так понимаю, идей по этому поводу и, тем более подсказок, ни у кого нет?
Добрый день, у меня не получилось воспроизвести вашу проблему, вот пример - https://snippet.webix.com/9lbjef4j при prerender: true
showItem(id)
и select(id)
работают корректно. Не могли бы вы предоставить свой пример?
Еще заметил, что включенный prerender в разы замедляет выполнение метода datatable.parse().
Производительность в значительной мере зависит от скорости отрисовки.
По умолчанию отрисовка в таблице динамическая: в DOM присутствуют только те строки и колонки, которые должны быть видны пользователю в данный момент.
prerender:true
, в соответствии со своим названием, при загрузке строит в DOM все элементы данных в таблице, независимо от того, находятся ли они в пределах видимости для пользователя или нет. К сожалению, производительность в таком случае действительно падает (в зависимости от количества данных) и ускорить этот процесс нельзя.