Существует 4 основных способа хранения данных на стороне клиента
1) В качестве параметров URL
Вы можете сохранить все состояние, необходимое для отображения страницы.так и должно быть в пределах маршрута.Вы ограничены логикой управления маршрутом и размером.Кроме того, вы можете хранить только строку и придется сериализовать другие данные вручную
2) В IndexedDB
Лучше, чем localStorage, действия являются асинхронными.Сложнее манипулировать напрямую, но можно использовать библиотеки, которые предоставляют интерфейс, аналогичный localStorage
3) localStorage / sessionStorage
Простое хранилище значений ключей.Простота в использовании и обновлении.Синхронный и блокирующий API.Максимальный размер может зависеть от браузера.Может использоваться для хранения данных.Рассмотрите возможность шифрования, если храните конфиденциальные данные (хотя и не рекомендуется для начала)
4) cookie
Только строки ограниченного размера должны будут сериализовать данные
Все библиотеки, которые вы используете, будут играть на этих 4 доступных базовых структурах.Best
- относительный термин.Если вы не синхронизируете данные периодически с сервером (например, автоматически сохраняете) и повторно увлажняете пользовательский интерфейс при обновлении с данными сервера, вам придется выбирать на основе стратегии и данных