Использование Realm in React Native с Redux

Я собираюсь начать разработку приложения React Native и полностью убежден в преимуществах управления состоянием приложения с помощью Redux, однако я хотел бы сделать доступными данные приложения в автономном режиме, используя Realm для постоянного хранения. Мне интересно, как Redux будет играть с Realm?

Приложение, которое я разрабатываю, будет вытаскивать большое количество данных JSON через RESTful API, а затем я хотел бы сохранить эти данные в локальном хранилище. По-видимому, Realm является отличным вариантом для этого. Однако я не уверен, как база данных Realm будет существовать в магазине Redux? Должно ли оно существовать вне магазина? Является ли использование Realm в приложении на основе Redux каким-то противоречием?

У меня был хороший поиск статей, описывающих использование Realm или других параметров хранилища (Asyncstorage или SQLite) для больших наборов данных с помощью Redux и может найти мало информации.

+21
источник поделиться
1 ответ

Магазин redux хорош, когда вы только реагируете на компоненты, относящиеся к данным. Магазин - это хороший способ поддерживать состояние вашего приложения. Например, вам не нужно, чтобы Realm сохранял текущий статус входа или флажки, указывающий, пропустил ли пользователь вход в систему. Здесь находится магазин redux.

С другой стороны, Realm является лучшим, когда вам приходится иметь дело со сложными запросами или большим объемом данных, которые нужно сохранить. Преимущество использования Realm заключается в том, что к данным можно легко получить доступ к вашим реактивным компонентам, а также к непрореагировавшим компонентам/классам. Realm дает вам преимущество для мониторинга ваших данных с помощью Realm Browser и построения отношений между вашими моделями. Царство также выигрывает гонку, если вам нужно выполнять какую-либо автономную синхронизацию.

Должно ли существовать внешнее хранилище - Да.

Является ли использование Realm в приложении на основе Redux как-то противоречием - Это зависит от того, для чего вы используете хранилище.

+10
источник

Посмотрите другие вопросы по меткам или Задайте вопрос