输入'字符串' | null 不可分配给类型“字符串”

时间:2020-12-25 11:38:23

标签: typescript jwt jwt-auth angular11

我正在使用 angular-jwt 来检查令牌是否过期,并且在使用时出现此错误

<块引用>

输入'字符串' | null 不可分配给类型 'string'

helper = new JwtHelperService();

var token: string = localStorage.getItem('token');
this.helper.isTokenExpired(token); // this line contains the error
<块引用>

错误

enter image description here

enter image description here

3 个答案:

答案 0 :(得分:3)

也许可以尝试在之前添加一个“if”条件来检查“token”是否为空:

var token: string = localStorage.getItem('token');
if (token)
   this.helper.isTokenExpired(token); // this line contains the error

答案 1 :(得分:1)

您的令牌不能为空。试试

let token = localStorage.getItem('token');
token = token === null ? undefined : token;
this.helper.isTokenExpired(token);

答案 2 :(得分:0)

这是解决方案。

let token: any = localStorage.getItem('token');

if (token == null)
  token = undefined;

return this.helper.isTokenExpired(token);