【发布时间】:2019-08-27 16:34:30
【问题描述】:
电影/id/external_ids?api_key=myapikey
{"id":335984,"imdb_id":"tt1856101","facebook_id":"BladeRunner2049","instagram_id":"bladerunnermovie","twitter_id":"bladerunner"}
想要显示所有社交 id 的价值,例如 facebook、insta 和 twitter。不知道我在做什么错
组件:
import { Component, OnInit } from '@angular/core';
import { DomSanitizer } from '@angular/platform-browser';
import { ActivatedRoute } from '@angular/router';
import { MoviesService } from '../movies.service';
@Component({
selector: 'app-movie',
templateUrl: './movie.component.html',
styleUrls: ['./movie.component.css']
})
export class MovieComponent implements OnInit {
movie: Object;
external_ids: Array<Object>;
constructor(
private _moviesServices: MoviesService,
private router: ActivatedRoute ) {
}
ngOnInit() {
this.router.params.subscribe((params) => {
const id = params['id'];
this._moviesServices.getMovie(id).subscribe(movie => {
this.movie = movie;
});
this._moviesServices.getExternalIds(id).subscribe((res: any) => {
console.log(res.facebook_id);
this.external_ids = res.external_ids;
});
})
}
}
HTML
<p *ngFor="let social of external_ids" class="text-primary" >
<span *ngIf="social.facebook_id.length > 0" class="mr-3">
{{social.facebook_id}}
</span>
</p>
【问题讨论】:
-
在这一行
console.log(res.facebook_id);中,您正在打印 facebook_id,而在下面的行中,您正在组件变量中保存 jsonthis.external_ids = res.external_ids;的 external_ids 属性。这是正确的吗? -
你尝试过只使用 {{facebook_id}} 而不是 {{social.facebook_id}} 吗?
-
我认为你应该在第二次订阅中做
this.external_ids = res -
@LucaRegazzi 是的 external_ids 拥有所有三个社会价值
标签: angular angular6 angular7 themoviedb-api