【发布时间】:2022-02-15 01:21:43
【问题描述】:
根据我对异步管道的理解,它是一种以更少行订阅 observable 的更快方式。但是,我试图了解在什么情况下需要通过传统订阅(例如下面的当前组件)使用它?
import { Component, OnInit } from '@angular/core';
import { HttpService } from "./services/http.service";
import { Main } from "./interfaces/data-interface";
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.scss']
})
export class AppComponent implements OnInit {
constructor(private httpService: HttpService) {
}
mainData: Main;
itemIndexFocus: number = 0;
ngOnInit() {
this.httpService.getFighterDetail()
.subscribe((res) => {
this.mainData = res.body;
});
}
}
http服务文件:
import { Injectable } from '@angular/core';
import { HttpClient, HttpHeaders } from "@angular/common/http";
import { Observable } from 'rxjs';
@Injectable()
export class HttpService {
constructor(private http: HttpClient) { }
getFighterDetail(): Observable<any> {
return this.http.get("/MYAPI", { responseType: 'json', observe: 'response' })
}
}
这只是我总是可以使用异步管道的情况吗?如果我使用来自 api 的值填充响应式表单,那么我想我上面的组件的方法会更有益。
【问题讨论】:
标签: angular