Провайдер Ionic5 с локальным хранилищем и удаленной синхронизацией - PullRequest
0 голосов
/ 29 мая 2020

Я подумываю реализовать поставщика данных, который будет хранить копию внутренних данных локально, чтобы они были легко доступны. Думаю, это будет называться зеркалированием или около того.

Однако его необходимо синхронизировать / обновить, чтобы оно оставалось совместимым с серверной частью.

Я думаю о провайдере с копией модели данных, такой как в качестве локального хранилища для сохранения или одиночного объекта, если он используется только для зеркалирования во время выполнения.

Какие существующие решения в библиотеке ioni c / angular для этого? Обратите внимание, что у нас нет собственного бэкенда, нет firebase или подобных решений.

1 Ответ

1 голос
/ 29 мая 2020

Ioni c и Angular не предоставляют стандартных функций для этого. Это выходит за рамки этих структур.

Вы можете создать службу, которая кэширует данные и периодически обращается к серверу для обновления sh данных. Вы также можете сделать это в более общем плане с помощью перехватчика . В руководстве Angular есть пример .

Вы также можете использовать service worker , чтобы добиться этого. Angular имеет некоторую поддержку для этого .

Если вы не изменяете данные локально (в приложении), а данные изменяются только удаленно (на сервере), это относительно просто. Если вы изменяете данные с обеих сторон, это может быть сложно реализовать, потому что вы можете получить конфликты синхронизации.

Если у вас много данных, и они должны быть постоянными, вероятно, лучше использовать IndexedDB для хранения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...