[英]Angular Ionic: Property 'json' doesn't exist on type 'Object'
我正在創建一個顯示github用戶及其詳細信息的Ionic 2項目。 我創建了一個名為github-users.ts的服務文件,並通過.json()方法向我展示了此錯誤。
類型“對象”上不存在屬性“ json”
這是我的github-users.ts源文件
import { HttpClient } from '@angular/common/http';
import { Injectable } from '@angular/core';
import { Observable } from 'rxjs/Rx';
import "rxjs/add/operator/map";
import { User } from "../../models/user";
@Injectable()
export class GithubUsersProvider {
githubApiUrl = 'api.github.com';
constructor(public http: HttpClient) {
console.log("Hello Github Users service");
}
load(): Observable<User[]> {
return this.http.get(`${this.githubApiUrl}/users`)
.map(res => <User[]>res.json());
}
}
我從控制台收到此錯誤
core.js:1449 ERROR Error: Uncaught (in promise): Error: StaticInjectorError(AppModule)[GithubUsersProvider -> HttpClient]:
StaticInjectorError(Platform: core)[GithubUsersProvider -> HttpClient]:
NullInjectorError: No provider for HttpClient!
Error: StaticInjectorError(AppModule)[GithubUsersProvider -> HttpClient]:
StaticInjectorError(Platform: core)[GithubUsersProvider -> HttpClient]:
NullInjectorError: No provider for HttpClient!
at _NullInjector.get (core.js:1003)
at resolveToken (core.js:1301)
at tryResolveToken (core.js:1243)
at StaticInjector.get (core.js:1111)
at resolveToken (core.js:1301)
at tryResolveToken (core.js:1243)
at StaticInjector.get (core.js:1111)
at resolveNgModuleDep (core.js:10896)
at _createClass (core.js:10933)
at _createProviderInstance$1 (core.js:10907)
at _NullInjector.get (core.js:1003)
at resolveToken (core.js:1301)
at tryResolveToken (core.js:1243)
at StaticInjector.get (core.js:1111)
at resolveToken (core.js:1301)
at tryResolveToken (core.js:1243)
at StaticInjector.get (core.js:1111)
at resolveNgModuleDep (core.js:10896)
at _createClass (core.js:10933)
at _createProviderInstance$1 (core.js:10907)
at c (polyfills.js:3)
at Object.reject (polyfills.js:3)
at NavControllerBase._fireError (nav-controller-base.js:223)
at NavControllerBase._failed (nav-controller-base.js:216)
at nav-controller-base.js:263
at t.invoke (polyfills.js:3)
at Object.onInvoke (core.js:4760)
at t.invoke (polyfills.js:3)
at r.run (polyfills.js:3)
at polyfills.js:3
您需要在導入下將HttpClientModule導入到您的app.module.ts中
imports:[
HttpClientModule
]
您的錯誤是= [沒有HttpClient的提供程序!]當您未在app.modules.ts文件中定義http模塊時,會發生這種類型的錯誤。 所以先檢查一下。
exp:從'@ angular / http'導入{HttpModule};
導入:[HttpModule]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.