में http देखे जाने योग्य से सदस्यता छोड़ें http सदस्यता से Angular2 सेवा के भीतर सदस्यता समाप्त करने का सबसे अच्छा अभ्यास क्या है?कोणीय 2: सेवा
वर्तमान में मैं यह करता हूं लेकिन मुझे यकीन नहीं है कि यह सबसे अच्छा तरीका होगा या नहीं।
import { Injectable } from "@angular/core";
import { Http } from "@angular/http";
import { Subject } from "rxjs/Subject";
import { ISubscription } from "rxjs/Subscription";
@Injectable()
export class SearchService {
private _searchSource = new Subject<any>();
public search$ = this._searchSource.asObservable();
constructor(private _http: Http) {}
public search(value: string) {
let sub: ISubscription = this._http.get("/api/search?value=" + value)
.map(response => <any>response.json())
.do(data => this._searchSource.next(data))
.finally(() => sub.unsubscribe()).subscribe();
}
}
अवलोकन योग्य पूर्ण होने पर सदस्यता समाप्त करने के लिए अनावश्यक और व्यर्थ लगता है। –
@ günter-zöchbauer वैसे यह मेरा सवाल नहीं था अगर यह समझ में आता है कि मेरा सवाल था: क्या सबसे अच्छा अभ्यास है। इसलिए? –
मुझे नहीं लगता कि उन चीजों के लिए सर्वोत्तम प्रथाएं हैं जो समझ में नहीं आती हैं: डी शायद बस - ऐसा मत करो। –