我是Angular2的新手,我使用jwthelper编码jwt令牌并提取详细信息。
import { Injectable } from '@angular/core';
import { JwtHelper } from 'angular2-jwt';
@Injectable()
export class SessionService {
constructor(private jwtHelper: JwtHelper){}
getUser(){
var token = JSON.parse(localStorage.getItem('currentUser'));
return this.jwtHelper.decodeToken(token.token);
}
}
无法找到以下错误的解决方案,并告诉我这里的错误。
错误错误:没有JwtHelper的提供者!
答案 0 :(得分:11)
这是因为您尝试在组件/服务的构造函数中注入JwtHelper
。仅对提供商 完成此操作。
根据using jwthelper in components部分,您必须创建一个新对象并使用它。
在您的服务中,
constructor(){} //remove from constructor.
getUser(){
let jwtHelper: JwtHelper = new JwtHelper();
var token = JSON.parse(localStorage.getItem('currentUser'));
return this.jwtHelper.decodeToken(token.token);
}