Как перезагрузить данные в таблице данных в Webix? refresh() не перезагружает данные?

Передавая данные в таблицу данных, сохраняется ее состояние как "originalState".
"Webix.storage.local.put(datatable.getState());"

обновил сортировку по столбцу и вернул состояние к его "originalState". var state = webix.storage.local.get("originalState"); if (state) { datatable.setState(state); }

Все работает нормально (например, переупорядочение столбцов, размер), но данные, которые были отсортированы ранее, не сбрасываются в исходные данные. Тем не менее его показывает только отсортированные данные. Попробовал обновить (), но все равно.

2 ответа

Решение

Невозможно вернуть таблицу обратно в несортированное состояние. Вы можете применить некоторую сохраненную сортировку, но вы не можете "отменить сортировку" таблицы.

table.refresh () будет перерисовывать только данные в datatable, у него нет других средств. Если вам нужна реальная перезагрузка данных из удаленного источника данных, вам нужно использовать

table.clearAll()
table.load(data_url);

Я не знаю, можно ли перезарядить.

Я нашел пример, который может вам помочь.

Когда вы "восстанавливаете состояние", также обеспечивает сортировку:

 function restore_state() {
        var state = webix.storage.local.get("state");
        if (state){
            grid.setState(state);   
            grid.sort("#rank#");
            grid.markSorting("rank", "asc");
        }
    }
Другие вопросы по тегам