오프라인 캐싱 및 맵 감소와 같은 기능이 모두 개발 중입니다. Firebase.js 여기에서 출처를 사용할 수 있습니다 Dev 및 Debugging의 경우.
로컬로 사용하는 스냅 샷을 직렬화 할 수 있습니다 ExportVal 모든 우선 순위 데이터를 보존합니다. 우선 순위를 사용하지 않으면 간단한 가치가 다음과 같습니다.
var fb = new Firebase(URL);
fb.once('value', function(snapshot) {
console.log('values with priorities', snapshot.exportVal());
console.log('values without priorities', snapshot.val());
});
나중에 Firebase가 오프라인 인 경우 (사용 .info/연결 이를 결정하기 위해) 앱이로드되면 .세트() 해당 데이터를 로컬 파이어베이스에 다시 넣습니다. FireBase가 온라인으로 오면 동기화됩니다.
그러나 이것은 한 사람 만 액세스하고 변경할 수있는 정적 데이터에만 적합합니다. 예를 들어, 낙진을 고려하여 데이터를 다운로드하고 일주일 동안 로컬로 유지하면 해당 시간 동안 다른 여러 사용자가 수정 한 다음 오프라인으로 앱을로드하고 하나의 사소한 변경을 한 다음 온라인으로 나옵니다. 나의 오래된 변화는 그 사이의 모든 작업을 날려 버릴 것입니다.
보안 규칙을 사용하고 카운터/타임 스탬프를 업데이트하여 오래된 데이터를 감지하고 회귀를 방지하는이를 처리하는 방법에는 여러 가지가 있지만이 경로를 따라 가기 전에 간단한 일이 아니며 깊은 고려가 필요합니다.