používam Uhlový 2.0 v ASP.NET projekt a uviazli s chybou importu rxjs do komponentu, ktorý sa má použiť v this.http.get
/this.http.post
.
Uhlové nastavenia:
"@angular/common": "2.0.0-rc.4",
"@angular/compiler": "2.0.0-rc.4",
"@angular/core": "2.0.0-rc.4",
"@angular/forms": "0.2.0",
"@angular/http": "2.0.0-rc.4",
"@angular/platform-browser": "2.0.0-rc.4",
"@angular/platform-browser-dynamic": "2.0.0-rc.4",
"@angular/router": "3.0.0-beta.2",
"@angular/router-deprecated": "2.0.0-rc.2",
"@angular/upgrade": "2.0.0-rc.4",
"rxjs": "5.0.0-beta.6"
Na komponente:
import "rxjs/add/operator/toPromise";
Vo funkcii sa snažím získať údaje http.get
prosiť a zvládnuť reagovať s toPromise
:
getData(): Promise<IToDo[]> {
return this.http.get("app/shared/todos.json")
.toPromise() // <- ERROR
.then(res => res.json())
.catch(this.handleError);
}
private handleError(error: any): Promise<any> {
return Promise.reject(error.message || error);
}
hádam toPromise()
neimportované správne. Ale prihlásim sa node_modules
všetci falšovatelia existujú a toPromise.d.ts
, toPromise.js
, toPromise.js.map
k dispozícii.
CHYBA:
Severity Code Description Project File Line Suppression State
Error TS2339 Property "toPromise" does not exist on type "Observable<Response>". TypeScript Virtual Projects C:UsersmaxDesktopLocalAccountsApp-masterLocalAccountsAppapphomeGLgl.service.ts 39 Active
odpovede:
0 pre odpoveď č. 1Toto je zvyčajne spôsobené najnovšími verziami. Riešením bude vydanie RC-4 alebo RC-5 spolu s RX-JS. Môžete mať generikum
import "rxjs/Rx"
;