Welcome to WuJiGu Developer Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
2.2k views
in Technique[技术] by (71.8m points)

javascript - subscribe is deprecated in Ionic

I have this warning "subscribe is deprecated: Use an observer instead of a complete callback" in a Ionic Proyect. Please Help.

fetch(cb) {
    this.loadingIndicator = true;
    this.cservice.postNcRangoConta(this.body).subscribe(
      res => {
        try {
          if (res) {
            this.headers = Object.keys(res[0]);
            this.columns = this.getColumns(this.headers);
            this.temp = [...res];
            cb(res);
            this.loadingIndicator = false;
          }
        } catch (error) {
          this.loadingIndicator = false;
          this.rows = null;
          this.toast.presentToast('No se encontraron datos', 'warning');
        }
      },
      err => {
        console.log(err);
        if (this.desde || this.hasta) {

          this.loadingIndicator = false;
          this.toast.presentToast('La API no responde', 'danger');
        } else {
          this.loadingIndicator = false;
          this.toast.presentToast('Debe llenar las fechas', 'warning');
        }
      }
    );
  }

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

The method subscribe isn't actually deprecated, but the way you're using it is deprecated. Try switching to the new syntax of it.

// Deprecated
source.subscribe(
  (res) => cb(res),
  error => console.error(error),
  () => console.log('Complete')
);

// Recommended
source.subscribe({
  next: (res) => cb(res),
  error: error => console.error(error),
  complete: () => console.log('Complete')
});



与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to WuJiGu Developer Q&A Community for programmer and developer-Open, Learning and Share
...