And*_*nov 18 rxjs ionic2 angular
有很多关于"地图不是函数"的问题,但几乎每个人都没有导入rxjs库.
在我的情况下,我做导入,但错误仍然存在.
我使用Ionic 2,这就是我的package.json依赖关系的样子:
"dependencies": {
"@angular/common": "2.0.0",
"@angular/compiler": "2.0.0",
"@angular/compiler-cli": "0.6.2",
"@angular/core": "2.0.0",
"@angular/forms": "2.0.0",
"@angular/http": "2.0.0",
"@angular/platform-browser": "2.0.0",
"@angular/platform-browser-dynamic": "2.0.0",
"@angular/platform-server": "2.0.0",
"@ionic/storage": "1.0.3",
"ionic-angular": "2.0.0-rc.1",
"ionic-native": "2.2.3",
"ionicons": "3.0.0",
"rxjs": "5.0.0-beta.12"
}
Run Code Online (Sandbox Code Playgroud)
这就是我创建服务的方式:
import { Injectable } from '@angular/core';
import { Http, Headers, RequestOptions, Response } from '@angular/http';
import { Observable } from 'rxjs';
import 'rxjs/add/operator/map';
@Injectable()
export class LoginService {
constructor(private http: Http) {
}
private dataUrl = '/node';
getData() : any {
this.http.get(this.dataUrl)
.map(response => response.json())
.subscribe(result => console.log(result));
}
}
Run Code Online (Sandbox Code Playgroud)
我也尝试重新安装rxjs模块,但仍然没有成功.也许它与离子2或当前的角度版本不兼容?
你觉得伙计们怎么样?
干杯,
安德烈
des*_*oga 14
这是2018年。我遇到了同样的问题。这对我有用:
import { Observable } from 'rxjs';
import { map } from 'rxjs/operators';
this.http.get(url)
.pipe(map(r => r.json()))
.subscribe(resp => {
resp = resp.json();
console.log(resp);
});
Run Code Online (Sandbox Code Playgroud)
cro*_*umb 10
我有同样的问题.
我正在使用jspm与system.js.对我来说,当我使用jspm update
angular2-http 升级我的系统时rxjs@5.0.0-beta.12
,但是angular2-dynamic-component@0.0.50
需要rxjs@5.0.0-rc.2
哪个是"rxjs"映射到的.我想因为它是最新版本?我通过检查config.js
jspm创建的文件发现了所有这些.
显然,当我使用声明时...
import 'rxjs/add/operator/map';
Run Code Online (Sandbox Code Playgroud)
...它正在将地图添加到rxjs版本5.0.0-beta.12
,而不是 http正在使用的版本.我不得不把线改成......
import 'npm:rxjs@5.0.0-beta.12/add/operator/map';
Run Code Online (Sandbox Code Playgroud)
......然后它奏效了.
小智 2
创建文件 rxjs-operators.ts
// Statics
import 'rxjs/add/observable/throw';
// Operators
import 'rxjs/add/operator/catch';
import 'rxjs/add/operator/debounceTime';
import 'rxjs/add/operator/distinctUntilChanged';
import 'rxjs/add/operator/map';
import 'rxjs/add/operator/switchMap';
import 'rxjs/add/operator/toPromise';
Run Code Online (Sandbox Code Playgroud)
并在需要时调用它。
import './rxjs-operators';
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
31906 次 |
最近记录: |