我想要一个这样的系统->
当前实施
Component =>
public CardMoved(){
const params:load_item_params = {}
let subscription = this._itemDetailsService.LoadItem(params).subscribe(data => {
subscription.unsubscribe();
});
}
NGRX商店=>
LoadItem(params:API_TYPE.load_item_params) : Observable<any> {
let observable$ = this._http.Post(UtilsService.apiServer + '/load_item', params);
return observable$.pipe(
map((data) => {
return data;
}),
)
}
HTTP服务=>
public Post<T>(url: string, payload: any): Observable<T>;
public Post<T>(url, payload): Observable<T> {
return this.http.post<T>(url, payload, httpHeaders)
.pipe(
retry(MAX_RETRY)
)
}
一切正常,我遇到的问题是,如果我在组件中未订阅偶数,则不会发送http调用。
我相信我仍然不太清楚可观察性和所有功能,而且我真的无法理解为什么如果我不订阅它就不会进行api调用
答案 0 :(得分:0)
这是角度文档中有关Angular可观测对象的课程。
基本用法和条款
作为发布者,您将创建一个Observable实例,该实例定义了订阅者函数。当使用者调用subscribe()方法时,将执行此函数。订户功能定义了如何获取或生成要发布的值或消息。
要执行您创建的可观察对象并开始接收通知,请调用其subscribe()方法 ,并传递一个观察者。这是一个JavaScript对象,用于定义您收到的通知的处理程序。 subscription()调用返回一个具有unsubscribe()方法的Subscription对象,您可以调用该方法停止接收通知。