作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在关注 this tutorial 。在从 api.github 获取用户列表的过程中,我收到错误:
Cannot find a differ supporting object '[object Object]'
我认为它与
有关 <ul>
<li *ngFor = "#user of users">
{{user | json}}
</li>
</ul>
在我的代码中,因为之前没有任何错误,并且我不确定数据是否来自 get 请求,只是单击没有给出任何错误,这是到目前为止我的代码
@Component({
selector: 'router',
pipes : [],
template: `
<div>
<form [ngFormModel] = "searchform">
<input type = 'text' [ngFormControl]= 'input1'/>
</form>
<button (click) = "getusers()">Submit</button>
</div>
<div>
<ul>
<li *ngFor = "#user of users">
{{user | json}}
</li>
</ul>
</div>
<router-outlet></router-outlet>
`,
directives: [FORM_DIRECTIVES]
})
export class router {
searchform: ControlGroup;
users: Array<Object>[];
input1: AbstractControl;
constructor(public http: Http, fb: FormBuilder) {
this.searchform = fb.group({
'input1': ['']
})
this.input1 = this.searchform.controls['input1']
}
getusers() {
this.http.get(`https://api.github.com/
search/users?q=${this.input1.value}`)
.map(response => response.json())
.subscribe(
data => this.users = data,
error => console.log(error)
)
}
}
bootstrap(router, [HTTP_PROVIDERS])
最佳答案
我认为您在响应负载中收到的对象不是数组。也许您想要迭代的数组包含在一个属性中。您应该检查接收到的数据的结构...
你可以尝试这样的事情:
getusers() {
this.http.get(`https://api.github.com/search/users?q=${this.input1.value}`)
.map(response => response.json().items) // <------
.subscribe(
data => this.users = data,
error => console.log(error)
);
}
编辑
根据 Github 文档 (developer.github.com/v3/search/#search-users),响应的格式为:
{
"total_count": 12,
"incomplete_results": false,
"items": [
{
"login": "mojombo",
"id": 1,
(...)
"type": "User",
"score": 105.47857
}
]
}
因此,用户列表包含在 items
字段中,您应该使用以下内容:
getusers() {
this.http.get(`https://api.github.com/search/users?q=${this.input1.value}`)
.map(response => response.json().items) // <------
.subscribe(
data => this.users = data,
error => console.log(error)
);
}
关于Angular:找不到不同的支撑对象 '[object Object]',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47007181/
我正在尝试在 Apache Camel 中实现以下路线:端点 1 接收消息。该路由向端点 2(清除正文)发起请求。 Transformer 使用端点 2 的结果来转换端点 1 传入消息的正文。 我尝试
我只需要对我的 Spring Web 应用程序的一个我不太理解的部分进行简短的解释。 我有一个带有 StudentController 的简单 mvc spring Web 应用程序。对于数据,我有一
我是一名优秀的程序员,十分优秀!