Перейти к индексу, используя `scrollToIndex` во второй раз
(Этот вопрос относится к реагирующей виртуализированной библиотеке)
У меня есть компонент, который использует <List>
для отображения нескольких категорий предметов. Полученный результат выглядит примерно так:
Jump to: Planets, Nebulae
PLANETS
- Mercury
- Venus
- Jupiter
- ...
NEBULAE
- Horsehead
- Ant
- Boomerang
- ...
Я хотел бы использовать ссылки "Перейти к" для прокрутки к началу соответствующего раздела в списке. Если я прокручиваю некоторые из них, я бы хотел, чтобы последующие клики по ссылке перехода вернули меня в раздел.
Первый раз, когда я нажимаю ссылку "Туманности", она работает нормально, но при последующих щелчках ничего не происходит. Я предполагаю, что это потому, что scrollToIndex
является опорой и не меняется после первого клика. Я пытался использовать forceUpdateGrid
но это не похоже на сброс позиции прокрутки.
Есть ли способ перейти к одному и тому же индексу несколько раз подряд?
1 ответ
К сожалению, это ограничение подхода реквизита. (Виртуализация реагирует только на прокрутку вручную, когда обнаруживается новая пропа. В противном случае пользователи не смогут прокручивать мышами, как только будет установлена начальная опора.)
Один из способов обойти это - сбросить scrollToIndex
пропустите, как только вы установите его (так что, если вы затем сбросите его, оно все равно будет новым значением). Временно отменить его (иначе сбросить на undefined
) также не повлияет на список, так что с вами все будет в порядке.