2017-10-29 1 views
2

개체를 노드 팔로워에 밀어 넣어야하지만 길을 찾지 못했습니다. Firebase 푸시 항목 맞춤 키

나는이 시도 :

this.af.database.list(`profile/${user}/followers/`).push({[from]: true}); 

을하지만 내 출력이 enter image description here

나는 다음 출력

enter image description here

어떤 생각을 필요로했다?

답변

6

push()을 사용하면 자동 생성 된 임의의 고유 ID를 사용하여 새 노드를 목록에 추가합니다. 특정 값을 설정해야하는 경우, 대신 set()를 사용해야합니다 :이 예에서

this.af.database.object(`profile/${user}/followers/${from}`).set(true); 

, 나는이 목록에 값을 직접 참조를 만들 object() 대신 list()의를 사용하고 당신을 만들고 싶습니다. ${from}은 코드에서 [from]과 같은 값입니다.

또는 대신 update() 방법을 사용할 수 있습니다 : 내가 설정 사용하는 경우,

this.af.database.object(`profile/${user}/followers`).update({[from]: true}); 
+0

을하지만()이 방법은 추종자의 모든 데이터를 삭제하고 진정한 넣어. –

+0

@MatiasCeliz 'profile/$ {user}/followers/$ {from}'하위에서'$ {from} '이 사용할 ID 인'set()'을 사용해야합니다. 'followers' 노드에서 직접'set()'을 사용하지 마십시오. – Grimthorr

+0

죄송 합니다만 이해할 수 없습니다. 두 번째 이미지처럼 노드에 새 요소를 삽입하면됩니다. 이'this.af.database.list ('followers/$ {user}') .push ({[from] : true});'내 결과가 첫 번째 이미지이다. 그런 다음'this.af.database.list ('followers/$ {user}') set ({[from] : true});을 시도해 보았고 앞으로는 다른 항목을 추가해야한다면 추종자는이 코드가 새로운 사용자 데이터 인'followers/$ {user}'의 모든 데이터를 대체합니다. –