在打字稿前端项目中使用 jwt-decode

Rah*_*war 7 jwt typescript auth0

描述 我试图在打字稿项目中使用 jwt-decode,即 Stencil 项目 & 它抛出以下错误:

此表达式不可调用。Type '{ default: (token: string, options?: Options) => TTokenDto; }' 没有调用签名。

import * as jwt_decode from 'jwt-decode';
.
.
.
let token = "........";
let decoded = jwt_decode(token);
Run Code Online (Sandbox Code Playgroud)

再生产

  • 在任何打字稿项目中安装 jwt-decode npm install --save @types/jwt-decode npm install --save jwt-decode 在你的代码中导入它并使用 import * as jwt_decode from 'jwt-decode'; . . . 让令牌 = "........"; 让解码 = jwt_decode(token);
  • 构建项目
  • 使用的这个库的版本:^2.2.0 平台版本或
  • 使用的框架(如果适用):模板 - ^1.3.3 ,打字稿 - 3.7.2

Rah*_*war 19

对导入语句的以下更正工作正常:

import jwt_decode from 'jwt-decode';
Run Code Online (Sandbox Code Playgroud)

  • 注意:对于在 2023 年或以后阅读本文的任何人,该包似乎[不再有默认导出](https://github.com/auth0/jwt-decode/blob/main/lib/index.ts),您将需要改为导入命名导出。 (3认同)