Angular2:jsonは型オブジェクトに存在しません

ジャイニル・チャウハン

私は初心者です。私はこの問題を解決することができません。私は他のエラーを読みましたが、それでも理解できません。

サービスに.mapまたは.subscribeを実行しているときに、プロパティ 'json'がタイプオブジェクトに存在しないなどのエラーが発生します。

これは私のものです:continents.component.ts

import { Component, OnInit } from '@angular/core';  
import { DataContinentsService } from '../../services/dataContinents.service';
import 'rxjs/add/operator/map';  
@Component({  
selector: 'app-continents',  
templateUrl: './continents.component.html',  
styleUrls: ['./continents.component.css'],  
providers: [DataContinentsService]  
})  
export class ContinentsComponent implements OnInit {  
continent: any;  
constructor(private dataContinentService: DataContinentsService) { }  
public getContinentInfo() {  
this.dataContinentService.getContinentDetail()  
.map((response) => response.json())  
.subscribe(res => this.continent = res.json()[0]);  
}  
ngOnInit() {}  
}  

これは私のサービスです:DataContinentsService

import { Injectable } from '@angular/core';  
import {HttpClientModule, HttpClient} from '@angular/common/http';  
// import 'rxjs/add/operator/map';  
@Injectable()  
export class DataContinentsService {  
constructor(private _http: HttpClient) {}  
public getContinentDetail() {  
const _url = 'http://restcountries.eu/rest/v2/name/india?fulltext=true';  
return this._http.get(_url);  
}  
} 

これは私のテンプレートです:continents.component.html

<h1>Continents</h1>  
<h3>Name: {{continent.name}}</h3>  
<h3>Capital: {{continent.capital}}</h3>  
<h3>Currency: {{continent.currencies[0].code}}</h3>  
<button (click)="getContinentInfo()">get details</button>  
GreyBeardedGeek

あなたは古いドキュメントを読んでいると思います。json()メソッドを持っていた応答を返すために使用された古いHttpクラス。

古いHttpクラスは廃止され、HttpClientクラスを適切に使用できるようになりました。HttpClientのget()メソッドは、任意のObservableを返します-応答のjsonをオブジェクトにマップします。通常、次のようにオブジェクトのタイプを指定します。

   this.http.get<SomeObject>(url);

その代わりに、オブジェクトを取得するだけです。いずれの場合も、返されたオブジェクトにはjson()メソッドはありません。

したがって、サービスはこれを行う必要があります。

public getContinentDetail(): Observable<Continent[]> {  
  const _url = 'http://restcountries.eu/rest/v2/name/india?fulltext=true';  
  return this._http.get<Continent[]>(_url);  
}

あなたはこのようなものを購読する必要があります

this.dataContinentService.getContinentDetail().subscribe(continents: Continent[] => 
  this.continent = continents[0]);  
}  

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Angular 5、rxjsはjsonにマップされ、「json」はタイプ「オブジェクト」に存在しません

分類Dev

Angular2はjsonをオブジェクトにマップします

分類Dev

Angular2 ngfor: undefined はオブジェクトではありません

分類Dev

Angular2は単一のJSONオブジェクトをマップできませんか?

分類Dev

プロパティ「トークン」はタイプ「オブジェクト」に存在しません-Angular8

分類Dev

Angular2はこのエラーを示しています:TypeError:オブジェクトにはメソッド 'requestAnimationFrame'がありません

分類Dev

Angular 7-HttpClient "プロパティ '成功'はタイプオブジェクトに存在しません"

分類Dev

オブジェクトはもう存在しません

分類Dev

オブジェクトアウターは存在しません

分類Dev

オブジェクト型にプロパティトークンが存在しません

分類Dev

存在しないオブジェクトでJSONリストを取得し、Angular2を使用してそれらをnullに置き換えます

分類Dev

Angular2のJSONデータ子オブジェクトからキー値を取得できません

分類Dev

Angular2 +はjson配列をjsonオブジェクトとして使用します

分類Dev

Javascriptはjsonオブジェクトにアクセスしません

分類Dev

ページ上のjsonオブジェクトをAngular2コンポーネントに渡します

分類Dev

Angularはオブジェクトを表示しません

分類Dev

Angular2:オブジェクトはMicrosoftEdgeブラウザーでこのアクションをサポートしていません

分類Dev

Angular2 / Ionic2:undefinedはオブジェクトではありません( 'Pst.Base64.decode'を評価しています)

分類Dev

IHttpActionResultはJSONオブジェクトを返しません

分類Dev

Angular2のJsonオブジェクトを反復処理します

分類Dev

JavaScriptSerializerはJson文字列をオブジェクトに変換しませんか?

分類Dev

JSON.parseは文字列をオブジェクトに変換しません

分類Dev

Angular2 マップ -> サブスクライブ データ型エラー (プロパティ 'length' は型 'ErrorObservable' に存在しません。)

分類Dev

Angular2は、typescriptを使用してJSONオブジェクトをマップおよび反復します

分類Dev

Angular2は、typescriptを使用してJSONオブジェクトをマップおよび反復します

分類Dev

Angular 2Typescriptはjsonをオブジェクトに解析します

分類Dev

Angular 2Typescriptはjsonをオブジェクトに解析します

分類Dev

Angular2:プロパティ 'controls'がタイプ 'AbstractControl'に存在しません。インデックスを介してformarray内のオブジェクトの.controlにアクセスするときのエラー

分類Dev

Angular2はform.valueオブジェクトにデータを削除または追加します

Related 関連記事

  1. 1

    Angular 5、rxjsはjsonにマップされ、「json」はタイプ「オブジェクト」に存在しません

  2. 2

    Angular2はjsonをオブジェクトにマップします

  3. 3

    Angular2 ngfor: undefined はオブジェクトではありません

  4. 4

    Angular2は単一のJSONオブジェクトをマップできませんか?

  5. 5

    プロパティ「トークン」はタイプ「オブジェクト」に存在しません-Angular8

  6. 6

    Angular2はこのエラーを示しています:TypeError:オブジェクトにはメソッド 'requestAnimationFrame'がありません

  7. 7

    Angular 7-HttpClient "プロパティ '成功'はタイプオブジェクトに存在しません"

  8. 8

    オブジェクトはもう存在しません

  9. 9

    オブジェクトアウターは存在しません

  10. 10

    オブジェクト型にプロパティトークンが存在しません

  11. 11

    存在しないオブジェクトでJSONリストを取得し、Angular2を使用してそれらをnullに置き換えます

  12. 12

    Angular2のJSONデータ子オブジェクトからキー値を取得できません

  13. 13

    Angular2 +はjson配列をjsonオブジェクトとして使用します

  14. 14

    Javascriptはjsonオブジェクトにアクセスしません

  15. 15

    ページ上のjsonオブジェクトをAngular2コンポーネントに渡します

  16. 16

    Angularはオブジェクトを表示しません

  17. 17

    Angular2:オブジェクトはMicrosoftEdgeブラウザーでこのアクションをサポートしていません

  18. 18

    Angular2 / Ionic2:undefinedはオブジェクトではありません( 'Pst.Base64.decode'を評価しています)

  19. 19

    IHttpActionResultはJSONオブジェクトを返しません

  20. 20

    Angular2のJsonオブジェクトを反復処理します

  21. 21

    JavaScriptSerializerはJson文字列をオブジェクトに変換しませんか?

  22. 22

    JSON.parseは文字列をオブジェクトに変換しません

  23. 23

    Angular2 マップ -> サブスクライブ データ型エラー (プロパティ 'length' は型 'ErrorObservable' に存在しません。)

  24. 24

    Angular2は、typescriptを使用してJSONオブジェクトをマップおよび反復します

  25. 25

    Angular2は、typescriptを使用してJSONオブジェクトをマップおよび反復します

  26. 26

    Angular 2Typescriptはjsonをオブジェクトに解析します

  27. 27

    Angular 2Typescriptはjsonをオブジェクトに解析します

  28. 28

    Angular2:プロパティ 'controls'がタイプ 'AbstractControl'に存在しません。インデックスを介してformarray内のオブジェクトの.controlにアクセスするときのエラー

  29. 29

    Angular2はform.valueオブジェクトにデータを削除または追加します

ホットタグ

アーカイブ