На примере ютуба:
я посмотрел ролик, и теперь я хочу, чтобы этот ролик всегда был помечен "просмотренно". То есть, моя история должна куда-то сохраняться. А что, если я давно пользую ютуб и успел посмотреть 10 тысяч роликов? Как ютуб будет помечать просмотренные ролики?
У меня node.js сервер, react.js+flux фронт и PG субд.
Вот что пришло в голову:
История перегружена лишней инфой - когда посмотрел, как ролик назывался и тп. Эта инфа нужна для других случаев. Я сделаю поиск и вытяну из PG только uuid всех просмотренных роликов. Переведу в форму array и отправлю на клиентскую часть. Клиент сохранит это все в localStorage и пометит датой, чтобы впредь сервак отдавал только недостающую часть истории. При рендере тех страниц, на которых нужно помечать "просмотренные ролики", я буду доставать локально-сохраненную историю и использовать простейший способ проверки:
if(arrayWithAllWatchedVideosUUIDs.indexOf(currentVideoUUID) !== -1) {
пометить как "просмотренно"
}
Что, если мне нужно 100 видеороликов за раз отрендерить, и все нуждаются в проверке "просмотрено ли"? Это вызовет трудности?
Есть способ лучше?