У меня есть коллекция моделей в моем приложении Backbone.js.
Это список элементов, на которые вы можете наводить курсор мыши или перемещаться по нему с помощью клавиатуры .
Если курсор мыши зависает, или если при навигации по клавиатуре выбран элемент, они оба будут делать то же самое: установить этот конкретный элемент / модель как «выбранный».
Итак, в моей модели у меня есть Атрибут в основном называется
selected: false
Когда он наводится или выбирается с помощью клавиатуры, тогда это будет
selected: true
Но как лучше всего гарантировать, что, когда одна модель верна, все остальные ложны?
Сейчас я делаю простую вещь - циклически просматриваю каждую модель в коллекции, а затем устанавливаю для выбранной модели значение true. Но мне интересно, есть ли лучший и более эффективный способ сделать это?
Ознакомьтесь с Backbone.CollectionView , который включает поддержку выбора моделей, когда они щелкаются из коробки. Случай наведения мыши можно реализовать с помощью метода setSelectedModel
.