Javascript 在Angular 8中找不到不同的支持对象“[object object]
我正在尝试从当前用户的播放列表中获取spotify API 我的控制台中有它,但我试图将其转换为html,但出现以下错误: 错误:找不到不同的支持对象“[object]” 类型为“对象”。NgFor仅支持绑定到Iterables,例如 数组。 在NgForOf.ngDoCheck common.js:4841 在checkAndUpdateDirectiveInline core.js:31913 在checkAndUpdateNodeLineCore.js:44367 在checkAndUpdateNode core.js:44306 在debugCheckAndUpdateNode core.js:45328 在debugCheckDirectivesFn core.js:45271 在Object.eval[as updateDirectives]playliscomponent.html:2 在Object.debugUpdateDirectives[作为updateDirectives]core.js:45259 在checkAndUpdateView core.js:44271 在callViewAction core.js:44637 这是我的user.service.ts:Javascript 在Angular 8中找不到不同的支持对象“[object object],javascript,html,angular,typescript,angular8,Javascript,Html,Angular,Typescript,Angular8,我正在尝试从当前用户的播放列表中获取spotify API 我的控制台中有它,但我试图将其转换为html,但出现以下错误: 错误:找不到不同的支持对象“[object]” 类型为“对象”。NgFor仅支持绑定到Iterables,例如 数组。 在NgForOf.ngDoCheck common.js:4841 在checkAndUpdateDirectiveInline core.js:31913 在checkAndUpdateNodeLineCore.js:44367 在checkAndUpd
public getUserPlaylists(): Observable<any> {
const endpoint = environment.spotifyApi.host + "me/playlists";
const httpOptions = {
headers: new HttpHeaders({
Authorization: `Bearer ${this.accessToken}`,
}),
};
return this.http.get(endpoint, httpOptions);
}
这是我的html:
<div class="playlists text-center">
<div class="test" *ngFor="let playlist of playlists">
{{playlist.name}}
</div>
</div>
正如您在日志中清楚地看到的那样,ngFor期望Iterables。只需指定项目,而不是指定完整对象 按照以下方式更新您的方法:
getPlaylists() {
let observable = this.userService.getUserPlaylists();
observable.subscribe((data) => {
this.playlists = data.items;
console.log(this.playlists);
});
}
正如您在日志中清楚地看到的那样,ngFor期望Iterables。只需指定项目,而不是指定完整对象 按照以下方式更新您的方法:
getPlaylists() {
let observable = this.userService.getUserPlaylists();
observable.subscribe((data) => {
this.playlists = data.items;
console.log(this.playlists);
});
}
我浏览了一遍,在playlist对象中找到了它返回的内容。在外部url节点中,您可以获取所需的播放列表url。然后你可以重复这个。播放列表
我浏览了一遍,在playlist对象中找到了它返回的内容。在外部url节点中,您可以获取所需的播放列表url。然后你可以重复这个。播放列表
对于阵列,请确保播放列表是一个阵列。如果要循环对象,这可能会对您有所帮助。playlists=数据是发生错误的地方。首先检查您从API得到的响应。其中一个属性可能以数组形式包含播放列表。@CodeMind我刚刚添加了我的控制台,打印出我从API获得的内容。您可以看一下吗?对于阵列,请确保播放列表是一个阵列。如果要循环对象,这可能会对您有所帮助。playlists=数据是发生错误的地方。首先检查您从API得到的响应。其中一个属性可能以数组形式包含播放列表。@CodeMind我刚刚添加了我的控制台,打印出我从API获得的内容。你能看一下吗?谢谢它解决了我的问题。但不知怎的,它并没有显示我所有的spotify播放列表…欢迎!!您需要从后端进行调试,您从Spotify获得的响应非常感谢您的帮助,我只是修复了我的后端问题。我希望我能为你的评论投票10次。谢谢你,它解决了我的问题。但不知怎的,它并没有显示我所有的spotify播放列表…欢迎!!您需要从后端进行调试,您从Spotify获得的响应非常感谢您的帮助,我只是修复了我的后端问题。我希望我能为你的评论投10票。
getPlaylists() {
let observable = this.userService.getUserPlaylists();
observable.subscribe((data) => {
this.playlists = data.items;
console.log(this.playlists);
});
}
getPlaylists() {
let observable = this.userService.getUserPlaylists();
observable.subscribe((res) => {
this.playlists = res.external_urls;
console.log(this.playlists);
});
}