Angular 在可观测范围内的角度2警告
我正在使用angular 2,我只是使用observable创建了一个服务。 在控制台中,我看到一些警告。 这是我的服务Angular 在可观测范围内的角度2警告,angular,typescript,warnings,observable,Angular,Typescript,Warnings,Observable,我正在使用angular 2,我只是使用observable创建了一个服务。 在控制台中,我看到一些警告。 这是我的服务 import { Injectable } from '@angular/core'; import {Http , Headers , Response , RequestOptions } from '@angular/http'; import {Phase} from '../classes/phase'; import { Observable } from 'rx
import { Injectable } from '@angular/core';
import {Http , Headers , Response , RequestOptions } from '@angular/http';
import {Phase} from '../classes/phase';
import { Observable } from 'rxjs/observable';
import 'rxjs/add/operator/map';
import 'rxjs/add/operator/catch';
import {PhaseParser} from '../parsers/phase-parser' ;
import * as globals from '../../globals';
import {User} from '../classes/user';
@Injectable()
export class LoginService {
postData: string;
puttData: string;
private headers = new Headers({'Content-Type': 'application/json'});
constructor( private _http: Http) { }
/*
// login to the application
login (body: User) {
const json = JSON.stringify(body);
const params = json;
const headers = new Headers();
headers.append('Content-type', 'application/json');
return this._http.post(globals.serverIp + '/auth', params, {
headers : headers
})
.map((res: Response) => res.json()).subscribe(data => this.postData = JSON.stringify(data),
error => console.log(JSON.stringify(error)),
() => console.log(JSON.stringify(this.postData)));
}*/
login(username: string, password: string): Observable<boolean> {
return this._http.post( globals.serverIp + '/auth', JSON.stringify({username: username, password: password}), {headers: this.headers})
.map((response: Response) => {
// login successful if there's a jwt token in the response
const token = response.json() && response.json().token;
if (token) {
// store username and jwt token in local storage to keep user logged in between page refreshes
localStorage.setItem('currentUser', JSON.stringify({ username: username, token: token }));
// return true to indicate successful login
return true;
} else {
// return false to indicate failed login
return false;
}
}).catch((error: any) => Observable.throw(error.json().error || 'Server error'));
}
getToken(): String {
const currentUser = JSON.parse(localStorage.getItem('currentUser'));
const token = currentUser && currentUser.token;
return token ? token : '';
}
logout(): void {
// clear token remove user from local storage to log user out
localStorage.removeItem('currentUser');
}
}
从'@angular/core'导入{Injectable};
从'@angular/Http'导入{Http,Headers,Response,RequestOptions};
从“../classes/Phase”导入{Phase};
从“rxjs/Observable”导入{Observable};
导入'rxjs/add/operator/map';
导入“rxjs/add/operator/catch”;
从“../parsers/phase parser”导入{PhaseParser};
从“../../globals”导入*作为全局变量;
从“../classes/User”导入{User};
@可注射()
导出类登录服务{
postData:字符串;
数据:字符串;
私有头=新头({'Content-Type':'application/json'});
构造函数(私有http:http){}
/*
//登录到应用程序
登录(正文:用户){
const json=json.stringify(body);
const params=json;
常量头=新头();
headers.append('Content-type','application/json');
返回此文件。_http.post(globals.serverIp+'/auth',params{
标题:标题
})
.map((res:Response)=>res.json()).subscribe(data=>this.postData=json.stringify(data),
error=>console.log(JSON.stringify(error)),
()=>console.log(JSON.stringify(this.postData));
}*/
登录(用户名:string,密码:string):可观察{
返回此消息。_http.post(globals.serverIp+'/auth',JSON.stringify({username:username,password:password}),{headers:this.headers})
.map((响应:响应)=>{
//如果响应中有jwt令牌,则登录成功
const token=response.json()&&response.json().token;
如果(令牌){
//将用户名和jwt令牌存储在本地存储中,以在页面刷新之间保持用户登录
setItem('currentUser',JSON.stringify({username:username,token:token}));
//返回true表示成功登录
返回true;
}否则{
//返回false表示登录失败
返回false;
}
}).catch((error:any)=>Observable.throw(error.json().error | |“服务器错误”);
}
getToken():字符串{
const currentUser=JSON.parse(localStorage.getItem('currentUser');
const token=currentUser&¤tUser.token;
返回令牌?令牌:“”;
}
注销():void{
//清除令牌从本地存储中删除用户以注销用户
localStorage.removietem('currentUser');
}
}
这是警告:
这个警告是否会给我的项目带来一些问题?
提前感谢您使用
从'rxjs/Observable'导入{Observable}代码>,大写字母O。它可以工作,谢谢