TS2304:Cannot 查找名称 'btoa'
TS2304:Cannot find name 'btoa'
我正在使用 btoa
方法对用户名和密码进行哈希处理,这似乎工作正常,但此错误出现在我的 TypeScript 错误 - WebStorm 中。如何解决?
js代码
let base64hash = btoa(user.username+ ':' + user.key);
tsconfig.json
/* tsconfig.json */
{
"compileOnSave": false,
"compilerOptions": {
"outDir": "./dist/out-tsc",
"sourceMap": true,
"declaration": false,
"moduleResolution": "node",
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"lib": [
"es2016"
]
}
}
编译器找不到 btoa()
的定义的原因是您没有包含所有必需的库。
当您使用 --lib
编译器选项时,您需要包含未使用此选项时默认包含的所有库。
在你的情况下,缺少的是 DOM
库,所以它应该是:
/* tsconfig.json */
{
...
"compilerOptions": {
...
"lib": [
"es2016", "DOM"
]
}
}
作为 btoa is in the lib.dom.d.ts 的定义。
我正在使用 btoa
方法对用户名和密码进行哈希处理,这似乎工作正常,但此错误出现在我的 TypeScript 错误 - WebStorm 中。如何解决?
js代码
let base64hash = btoa(user.username+ ':' + user.key);
tsconfig.json
/* tsconfig.json */
{
"compileOnSave": false,
"compilerOptions": {
"outDir": "./dist/out-tsc",
"sourceMap": true,
"declaration": false,
"moduleResolution": "node",
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"lib": [
"es2016"
]
}
}
编译器找不到 btoa()
的定义的原因是您没有包含所有必需的库。
当您使用 --lib
编译器选项时,您需要包含未使用此选项时默认包含的所有库。
在你的情况下,缺少的是 DOM
库,所以它应该是:
/* tsconfig.json */
{
...
"compilerOptions": {
...
"lib": [
"es2016", "DOM"
]
}
}
作为 btoa is in the lib.dom.d.ts 的定义。