所以我試圖通過api檢索數據並不能與密鑰選擇角2對象密鑰選擇
應用檢索/ app.component.ts
import {Component} from 'angular2/core';
import {Http} from 'angular2/http';
import {httpServiceClass} from './service';
import {HTTP_PROVIDERS} from 'angular2/http';
import {Observable} from 'rxjs/Observable';
import {Api} from './api';
@Component({
selector: 'my-app',
templateUrl: 'mytemplate.html',
providers:[httpServiceClass,HTTP_PROVIDERS]
})
export class AppComponent implements OnInit{
private api:Api[];
constructor(private getservice:httpServiceClass){
}
ngOnInit(){
this.getservice.httprequest()
.subscribe(data => this.api = data);
}
}
服務文件
應用程序/應用程序.service.ts
import {Injectable} from 'angular2/core';
import {Http, HTTP_PROVIDERS} from 'angular2/http';
import 'rxjs/add/operator/map';
import {Observable} from 'rxjs/Observable';
import 'rxjs/Rx';
import {Api} from './api';
@Injectable()
export class httpServiceClass{
constructor(private http: Http){}
httprequest(): Observable<Api[]>{
return this.http.get(' http://date.jsontest.com')
.map(response => response.json());
}
}
api.ts
export interface Api{
time:string;
date:string;
}
mytemplate.html
<h1 >HTTP : {{api|json}}</h1>
返回HTTP:{ 「時間」: 「下午一時52分41秒」, 「milliseconds_since_epoch」:1472910761126, 「日期」: 「2016年9月3日」}
我試着在控制檯中鍵
<h1 >HTTP : {{api.time}}</h1>
回報選擇
例外:找不到在[AppComponent @ 0:4中的api中]不同的支持對象'[object Object]'
你在'AppComponent'中聲明'api'作爲一個數據數組:'Api []'。然後當你在模板中顯示'api | json'時,我們看到它是一個對象。你應該先修復你的代碼。 – jobou
現在我很困惑我應該聲明'api'是什麼類型? –
我認爲它應該在'AppComponent'和'httprequest'中都是'Api'。請注意,您並未導入「OnInit」事件。您正在導入'。/ service',但您的文件名爲'app.service.ts'。有一堆這樣的小錯誤。其他有你的錯誤的人幾乎總是在模板的某個地方使用'* ngFor'循環。你在使用它嗎? – jobou