web-dev-qa-db-fra.com

La propriété '_body' n'existe pas sur le type 'Response'

J'utilise Angular 2 et j'obtiens cette erreur lorsque j'utilise un Property '_body' does not exist on type 'Response' Observable. Le code est ci-dessous

this.securitiesService.getMarketMovers()
    .subscribe(data => {
        console.log(JSON.parse(data._body))
    });

La fonction getMarketMovers est simplement la suivante:

getMarketMovers() {
    return this._http.get('...url address...')
}

J'ai essayé de définir data pour taper any mais cela ne fonctionne pas pour moi. Le code fonctionne et il y a certainement une propriété _body Sur les données mais il y a quand même une erreur et je ne peux pas construire avec cette erreur.

Toute aide est grandement appréciée.

26
georgej

MISE À JOUR

Une autre façon consiste à dire explicitement à TypeScript que nous ne souhaitons pas effectuer une vérification de type stricte.

(<any>data)._body

ORIGINAL

Cette data["_body"] devrait marcher.

72
Konst
data.json();

vous donnera le résultat json: https://angular.io/docs/ts/latest/guide/server-communication.html

19
Chris

pour résoudre cette erreur, il serait préférable d'ajouter. : Promettre <any> après la fonction getMarketMovers ().

1
Yogesh Aggarwal