데이터베이스 내부 데이터베이스에서 사용자 가져 오기 : 중포 기지를보기
사용자가 보이는 게시물을 추가 할 수있는 비트 같은 : 내가 author
내에서 모든 사용자 정보를 저장하지한다고 생각
postKey
content: 'Content of the post',
date: 'Date of post',
author: 'authorKey' (author key is a login)
사용자가 언젠가 그의 프로필에서 무언가를 바꿀 것이기 때문입니다. author
안에 그냥 사용자 키를 저장하고 그 안에 포스트 데이터를 인쇄하는 동안 그 사용자를 얻고 싶습니다. 나는 모든 게시물을 받고 있어요 방식이 (제대로 작동)의
(서비스)
getPosts(): Promise<any> {
return new Promise(
(resolve) => {
this.af.database.list('/posts')
.subscribe(response => {
if(response.length > 0) resolve(response);
})
}
)
}
(구성 요소) 여기에 그냥보기 내부를 인쇄 할 배열을 게시하는 모든 게시물을 assaign.
posts: any;
constructor(private homepageService: HomepageService) {
homepageService.getPosts().then(
response => {
this.posts = response.reverse();
});
}
나는 아주 쉽게 인쇄 할 수있는 모든 POST 데이터를 제외하고 (보기), I는 등의 사진, 이름, 성,
같은 저자의 데이터를 인쇄 post.author하여 사용자를 좀하고 싶습니다<div *ngFor="let post of posts" class="post-body">
{{post.content}}
{{homepageService.getUser(post.author)?.email}}
</div>
이렇게하면 사용자를 얻고 싶습니다. 여기에 내가 그 라인이보기 내부에 then
없지만 내가 비동기 파이프를 사용하여도 시도했다고 잘못 {{homepageService.getUser(post.author)?.email}}
알고 인 getUser 기능
getUser(key): Promise<any> {
return new Promise(
(resolve) => {
this.af.database.object('/users/' + key)
.subscribe(response => {
resolve(response);
})
}
);
}
입니다. 이제 나는 정지했다. 어떻게해야합니까?
와
. 게시물이 표시되지 않으며 아무 것도 할 수 없으며 클릭 할 수 없습니다. 모두 얼어 붙었다. (콘솔에서 오류 없음). "''이 메소드는 메소드가 호출 될 때마다 약속이 변경 될 때 새로운 약속을 검색하는 변경 감지를 트리거하는 약속의 새 인스턴스를 반환하기 때문에 예상되는 동작입니다. ..'' – elzoy
데이터베이스 호출에서 얻은 관측 값을 직접 반환하면 어떨까요? (내 업데이트 된 답변 참조) –
그래, 난 그냥 똑같이하고 작동합니다. 고맙습니다. – elzoy