Есть ли способ обойти необходимость в столбце идентификатора? Моя цель состоит в том, чтобы динамически отображать 100 000 результатов. В настоящее время единственным способом, который я нашел для этого, является создание столбца «id» в таблице, а затем его прохождение (что довольно дорого). Если это так, есть ли более эффективный способ сделать это? Как скрыть столбец, когда отображается сетка?Столбец идентификатора Slickgrid
ответ
Поскольку использование dataview вызывает уникальное требование идентификатора, то с использованием простого массива, поскольку ваши данные будут достаточными для удаления ограничения.
Если расширенная функциональность DataView требуется, то у вас есть возможность предоставления поля/свойства в setItems
вызова, который обеспечит/переопределить id
поля (поле должно присутствовать в каждом объекте данных и имеет уникальность по всем элементам данных). Если вы не можете гарантировать эти два условия, осталось только два варианта.
- настроить исходный код DataView, чтобы обеспечить UUID при обработке
updateIdxById
- вручную перебирать данные и впрыснуть UUID (, что вы сейчас делаете)
Что касается отображение столбцов:
Только те поля, для которых вы предоставили определение столбца, отображаются в сетке. Таким образом, до тех пор, пока вы не укажете поле в определении столбца, оно не будет отображаться. Вы можете видеть в this example, что каждый объект данных содержит свойство id
, но ни один из элементов массива columns
не имеет field
, который указывает на это свойство, поэтому он не отображается в виде столбца.