2016-10-21 4 views
22

React 네이티브 앱 개발을 착수하고 있으며 Redux를 사용하여 앱 상태 관리의 이점을 완전히 확신하고 있지만 앱의 데이터를 사용 가능하게 만들고 싶습니다. 영구 저장소에 Realm을 사용하여 오프라인으로. 내가 궁금해하는 점은 Redux가 Realm과 어떻게 연동 할 것인가?Rex에서 Realm 사용 Redux로 Native 앱

내가 개발중인 앱은 RESTful API를 통해 많은 양의 JSON 데이터를 가져온 다음이 데이터를 로컬 저장소에 보관하고 싶습니다. Realm은이를위한 훌륭한 옵션 인 것으로 보입니다. 그러나 내가 확신 할 수없는 것은 어떻게 영역 데이터베이스가 Redux 저장소 내에 존재할 것인가입니다. 상점 외부에 존재해야합니까? Redux 기반 응용 프로그램 내에서 영역을 모순적으로 사용하고 있습니까?

Redux를 사용하는 대규모 데이터 세트에 대해 Realm 또는 다른 저장 옵션 (Asyncstorage 또는 SQLite)의 사용법을 설명하는 기사를 잘 찾았으며 정보를 거의 찾을 수 없습니다.

+2

오른쪽 데이터를로드/저장하기 위해 영역 데이터베이스에 실제로 비동기 호출을하는 LOAD/SAVE 동작을 정의하지 않는 이유는 무엇입니까? 한 번에 많은 양의 데이터를로드 할 수 없기 때문에 다른 서비스처럼 th 영역 데이터베이스를 처리하는 것과 비슷합니다. – iamnat

+0

"큰"크기는 얼마입니까? – JeremyKun

+0

안녕하세요, 비슷한 문제가 있습니다. iOS와 Android 용 네이티브 응용 프로그램에 Firebase 실시간 데이터베이스의 데이터를 추출하여 표시합니다. 내 데이터베이스가 크고 (더 많은 14400 라인 포함) 인터넷에 연결되어 있지 않아도이 데이터를 모두 표시해야합니다. 그래서, 연결이 없을 때마다 데이터를 읽고 쓰는 jSON 파일을 만들 생각이었습니다.하지만 Realm을 발견했습니다. 그럼 내 요구 사항을 충족한다고 생각하니? 나는 또한 내 앱에서 Redux를 사용하고 있는데, 내 앱에서 모순이 있을까요? 감사합니다. – user3521011

답변

10

redux 저장소는 데이터를 다루는 구성 요소에만 반응 할 때 유용합니다. 상점은 응용 프로그램의 상태를 유지하는 좋은 방법입니다. 예를 들어, 현재 로그인 상태 또는 사용자가 로그인을 건너 뛴지 여부를 나타내는 플래그를 저장하기 위해 영역이 필요하지 않습니다. redux 상점이 게임에서 이겼습니다.

한편 Realm은 복잡한 쿼리 나 많은 양의 데이터를 저장해야 할 때 가장 좋습니다. Realm을 갖는 이점은 반응하는 구성 요소/비 반응 구성 요소/클래스 내에서 데이터에 쉽게 액세스 할 수 있다는 것입니다. Realm을 사용하면 Realm Browser로 데이터를 모니터하고 모델 간의 관계를 구축 할 수 있습니다. 영역 동기화는 오프라인 동기화를해야하는 경우 경쟁에서 이기기도합니다.

상점 외부에 있어야합니다 ().

Redux 기반 응용 프로그램 내에서 영역을 사용하고 있습니다. 어떻게 든 모순 - 저장소를 사용하는 대상에 따라 다릅니다.

+0

당신의 훌륭한 반응에 감사드립니다 :-) 이 질문을 쓰는 이래로 나는 redux가 무엇인지, 그리고 어떻게 사용되었고 나는 위의 진술에 완전히 동의하는지 훨씬 더 잘 이해하고 있습니다. 나는 내가 렐름을 사용할 필요가 있는지 또는 Redux 저장소가 적절하게 될 것인지 아직 확실하지 않습니다. 나는 나의 유스 케이스에 대해 나중에 의심한다. 다시 한번 감사드립니다. –

+0

우리도 비슷한 결정을 내리고 있습니다 - 최종 결정을 내렸습니까? 그렇다면 선택에 만족합니까? 우리는 이미 렐름을 구현해 왔지만, 프로젝트에 많은 오버 헤드를 추가하고이를 제거하는 것을 고려하고 있습니다. 필자는 많은 모바일 앱에 대해 오프라인 문제가 얼마나 많은지 궁금해합니다. 특히 우리가 ecom이고 사람들이 오프라인으로 할 것으로 기대하는 것이 아니기 때문입니다. –

+0

나는 clockit.io의 공동 창업자입니다. 여기 clockit에서 우리는 오프라인 위치 추적의 일부로 백그라운드에서 사용자 위치 정보를 저장합니다. Redux와 Realm은 애플리케이션의 요구 사항에 완전히 달려 있습니다.ecom을 사용하는 경우 영역을 사용하면 매우 구체적인 오프라인 저장소 요구 사항이없는 한 오버 헤드가 발생합니다. –

관련 문제