找不到名称 'document'。您需要更改目标库吗?尝试更改 `lib` 编译器选项以包含 'dom'.ts(2584)
Cannot find name 'document'. Do you need to change your target library? Try changing the `lib` compiler option to include 'dom'.ts(2584)
我想在 deno 中使用打字稿将 html 字符串转换为 html 元素。我为它找到了这个功能:
function createElementFromHTML(htmlString: string) {
var div = document.createElement('div');
div.innerHTML = htmlString.trim();
return div.firstChild;
}
当我用这个命令运行它时:
deno run --allow-net .\scripts\API\fetchUtils.ts
它告诉我这个:
Cannot find name 'document'. Do you need to change your target library? Try changing the lib
compiler option to include 'dom'.ts(2584)
经过一番搜索后,我发现我需要将其添加到我的 tsconfig 中:
{
"compilerOptions": {
"allowJs": true,
"esModuleInterop": true,
"lib": ["esnext", "DOM"],
"module": "esnext",
"moduleResolution": "node",
"noEmit": true,
"pretty": true,
"resolveJsonModule": true,
"target": "esnext"
},
"include": [
"./**/*.ts"
]
}
我仍然遇到同样的错误,重新启动等都没有帮助。
我不知道这是否会有所不同,但从我开始的角度来看,我的项目是这样构建的运行从控制台获取 deno 文件:
scripts
-API
-fetchUtils.ts
tsconfig.json
deno.config
可能未设置为“./tsconfig.json”(或其路径)
如果您使用的是 vscode,请按照提到的问题进行操作。
如果没有,do configuration
我想在 deno 中使用打字稿将 html 字符串转换为 html 元素。我为它找到了这个功能:
function createElementFromHTML(htmlString: string) {
var div = document.createElement('div');
div.innerHTML = htmlString.trim();
return div.firstChild;
}
当我用这个命令运行它时:
deno run --allow-net .\scripts\API\fetchUtils.ts
它告诉我这个:
Cannot find name 'document'. Do you need to change your target library? Try changing the
lib
compiler option to include 'dom'.ts(2584)
经过一番搜索后,我发现我需要将其添加到我的 tsconfig 中:
{
"compilerOptions": {
"allowJs": true,
"esModuleInterop": true,
"lib": ["esnext", "DOM"],
"module": "esnext",
"moduleResolution": "node",
"noEmit": true,
"pretty": true,
"resolveJsonModule": true,
"target": "esnext"
},
"include": [
"./**/*.ts"
]
}
我仍然遇到同样的错误,重新启动等都没有帮助。
我不知道这是否会有所不同,但从我开始的角度来看,我的项目是这样构建的运行从控制台获取 deno 文件:
scripts
-API
-fetchUtils.ts
tsconfig.json
deno.config
可能未设置为“./tsconfig.json”(或其路径)
如果您使用的是 vscode,请按照提到的问题进行操作。 如果没有,do configuration