Bonjour,

Voila je rencontre un problème pour créer une fonction Delete avec Angular 4.

J'ai suivi un tuto mais celui-ci utilise toPromise() que je peux utiliser en faisant " import 'rxjs/add/operator/toPromise' " mais j'obtiens une erreur quand je lance mon serveur.

ERROR in ./src/app/home/home.component.ts
Module not found: Error: Can't resolve 'rxjs/add/operator/toPromise' in 'C:\projects\TUTOS\CRUD-ANGULAR\src\app\home'
i 「wdm」: Failed to compile.

Je vous donne le lien du tuto : https://www.youtube.com/watch?v=HCHvrbAd1QA&index=1&list=PLz5rnvLVJX5V_HHgoXYmGyA0_a3SJA3M0

Et voilà le code de mon home.component.ts où se trouve mon erreur.

import { Component, OnInit } from '@angular/core';
import {Http, Response, Headers} from '@angular/http';
import 'rxjs/add/operator/toPromise';
//import {Observable} from "rxjs/Rx";
//import { Observable, Subject, ReplaySubject, from, of, range } from 'rxjs';
//import { map, filter, switchMap } from 'rxjs/operators';
//import 'rxjs/all';

@Component({
  selector: 'app-home',
  templateUrl: './home.component.html',
  styleUrls: ['./home.component.css']
})
export class HomeComponent implements OnInit {

  constructor(private http: Http) { }
  id: number;
  private headers = new Headers({'Content-Type': 'application/json'});

  products = [];
  fetchData = function() {
    this.http.get("http://localhost:5555/products").subscribe(
      (res: Response) => {
        this.products = res.json();
      }
    )
  }

  deleteProduct = function(id) {
    if(confirm("Are you sure?")) {
      const url = `${"http://localhost:5555/products"}/${id}`;
      return this.http.delete(url, {headers: this.headers}).toPromise()
        .then(() => {
          this.fetchData();
        })
    }
  }

  ngOnInit() {
    this.fetchData();
  }

}

Comme vous pouvez le voir, j'ai essayé d'autres imports d'après les réponses de différents forums où les gens ne pouvaient pas utiliser toPromise().

Si vous avez une solution pour que je puisse utiliser le toPromise() ou bien une autre façon de pouvoir faire un delete sur angular 4 en utilisant ce qui m'a été donné dans le tuto (je pense que ça sera pareil pour le update qui utilise aussi " import 'rxjs/add/operator/toPromise' ", je vous en serrais reconnaissant.

Merci ! :)

Aucune réponse