0

Есть ли способ обойти необходимость в столбце идентификатора? Моя цель состоит в том, чтобы динамически отображать 100 000 результатов. В настоящее время единственным способом, который я нашел для этого, является создание столбца «id» в таблице, а затем его прохождение (что довольно дорого). Если это так, есть ли более эффективный способ сделать это? Как скрыть столбец, когда отображается сетка?Столбец идентификатора Slickgrid

ответ

0

Поскольку использование dataview вызывает уникальное требование идентификатора, то с использованием простого массива, поскольку ваши данные будут достаточными для удаления ограничения.

Если расширенная функциональность DataView требуется, то у вас есть возможность предоставления поля/свойства в setItems вызова, который обеспечит/переопределить id поля (поле должно присутствовать в каждом объекте данных и имеет уникальность по всем элементам данных). Если вы не можете гарантировать эти два условия, осталось только два варианта.

  • настроить исходный код DataView, чтобы обеспечить UUID при обработке updateIdxById
  • вручную перебирать данные и впрыснуть UUID (, что вы сейчас делаете)

Что касается отображение столбцов:

Только те поля, для которых вы предоставили определение столбца, отображаются в сетке. Таким образом, до тех пор, пока вы не укажете поле в определении столбца, оно не будет отображаться. Вы можете видеть в this example, что каждый объект данных содержит свойство id, но ни один из элементов массива columns не имеет field, который указывает на это свойство, поэтому он не отображается в виде столбца.