0

해시 태그 컬렉션에 새 해시 태그 (예 : #love, # goodMorning)가없는 경우 해당 목록을 추가하려고합니다. 또한 애플리케이션이 로그인 한 사용자를 지원합니다 데이터베이스에 쓸 수 있습니다.Google 보이스 스토어에 데이터가 없습니다 (동기화 됨) 인 경우

한 명의 사용자 만이 문서에 액세스 할 수있는 경우 아래 코드를 사용할 수 있습니다.

hashtags=["one","two","three"]; 
hashtags.forEach(hashtagToAdd => { 
    this.afs.collection("hashtags").ref 
    .where("name", "==", hashtagToAdd) 
    .limit(1) 
    .get() 
    .then(result => { 
    if (result.empty) { 
     // code to add new hashtag e.g. here hashtagToAdd 
    } else { 
     console.log("hashtag is already present"); 
    } 
    }) 
    .catch(error => { 
    console.log("error aayo che", error); 
    }); 
} 

내 경우에는 여러 사용자가 액세스하고 쓸 수 있습니다. 해시 태그를 가져 오기 전에 해당 해시 태그를 찾지 못했지만 해시 태그를 추가하기 전에 다른 사용자가 이미 동일한 해시 태그를 추가 한 경우 중복 항목이 존재할 수 있습니다. 이것을 피하는 방법? 또한 새로운 해시 태그 목록에 대해 이렇게하는 더 좋은 방법이 있습니까?

답변

0

해결책을 찾았습니다. 정적 위치에 데이터를 저장하면 쉽게 수행 할 수 있습니다. 예 : 이러한 정보를 저장하는 ...

hashtags=["one","two","three"]; 

이 같은 경우 FireStore의 구조를 사용합니다 :

/hashtags/one/{name:one} 
/hashtags/two/{name:two} 
/hashtags/three/{name:three}