我來自Python世界,並且是Angular/ts/js編程方式的初學者。Angular Promise:無法獲得價值
Ionic storage.get()
方法返回Promise
。我應該如何獲得令牌的價值以便通過我的http查詢發送?
現在,我想要這種錯誤的集團:
get(url: string): Observable<Response> {
let token = "";
this.storage.get('token')
.then(token => token = token);
return this.http.get(url, { "Authorization" : token});
}
當然,請求葉令牌=「」,而不是說應該來的承諾分辨率回來後的一個。
我在Promise中看不到其他方法,而不是then()
和catch()
。我已經考慮下面的代碼:
get(url: string): Observable<Response> {
return this.storage.get('token').then(
token => {
return this.http.get(url, { "Authorization": token })
);
});
但隨後,get(url)
返回Promise<Observable<Response>>
,而不是Observable<Response>
,這並不能幫助我很多。
如果anwser位於使用延遲($ q https://docs.angularjs.org/api/ng/service/ $ q)之內,有人請告訴我該類如何導入角/離子?
謝謝您的幫助:)
Hi @ pankaj-parkar。感謝您的回答。我得到「[ts]屬性'fromPromise'不存在於'typeof Observable'類型中。」我會盡快修復它,但如果你有任何提示,將歡迎:) – Paul
@Paul你添加了'Observable' import? –
是的,我的代碼中有這兩行: '從'rxjs/Observable'導入{Observable}; import'rxjs/add/operator/fromPromise';'但是我在'rxjs/add/operator'中沒有'fromPromise.js',所以我猜這是正常的。或不... ? – Paul