2

로그인 한 사용자가 주어진 위치를 "즐겨 찾기"로 표시 할 수있는 간단한 위치 목록이 나열된 간단한 앱이 있습니다.Firebase가 2 인 여러 목록에서 값 검색

중포 기지의 내 자료 구조는 같은 위치의 단순리스트 포함

:

위치 => 위치 ID [] => [{상품명 : "MyName로"}, {상품명 : "MyName로 2}]

'좋아요'=> userId를 : [] => 위치 ID : [] => {좋아 : TRUE} 나는 몇 가지 간단한 논리를 사용하여 내 템플릿이 반복 할

:

<md-card *ngFor="let location of locations | async"> 
    <md-card-title> {{location.name}}</md-card-title> 
    <md-card-content>{{location.liked}}</md-card-content> 
    </mc-card> 
을 내 구성 요소 그러나

locations: Observable<any[]>; 

    constructor(
    private cardService: CardService, 
    private router: Router, 
    public af: AngularFire) 
    { 
    this.locations = af.database.list('/trips') 
     .map((locations) => { 
     return locations.map((location) => { 
      location.liked = af.database.object(`/likes/${this.uid}/${location.$key}`); 
      return location; 
     }) 
     }); 

에서에서 다음과 같은 논리로

는 location.liked 속성은 내보기에 비어 있습니다. /likes/${this.uid}/${location.$key} URL에 실제로 원하는 데이터가 있는지 확인했습니다.

어떻게 처리해야합니까?

감사 location.like으로

답변

0

FirebaseObjectObservable 객체를 반환 중포 기지 database.object입니다. 이

<md-card-content>{{location.liked | async}}</md-card-content> 

당신은 같은 일이 내가 필요 정확히 무엇 AngularFire Docs

+0

여기에 설명 찾을 수 이상보기 개체 값을 표시하려면 async 파이프를 사용해야합니다. 고마워. 객체에서 실제 값을 가져 오려면 {{location.liked | async) .value}} – user3642173

+0

@ user3642173'? {location.liked | async) ?. value}}' –

+0

감사합니다 Pankaj - 내가 왜 이걸주의해야하는지 자세히 설명해 주시겠습니까? – user3642173