Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/40.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 打字困难_Javascript_Node.js_Typescript - Fatal编程技术网

Javascript 打字困难

Javascript 打字困难,javascript,node.js,typescript,Javascript,Node.js,Typescript,我下载了TypeScript和NodeJS的最新版本,获得了TypeScript中的一个小示例,并尝试使用Node终端和Windows10命令行进行编译。请参阅下文: 我使用的示例程序是: let greeting:string = "Hello!"; console.log(greeting); C:\Users\CaitlinG>tsc greet.ts node_modules/@types/mongodb/index.d.ts:482:22-错误TS2304:找不到名称“Promise

我下载了TypeScript和NodeJS的最新版本,获得了TypeScript中的一个小示例,并尝试使用Node终端和Windows10命令行进行编译。请参阅下文:

我使用的示例程序是:

let greeting:string = "Hello!";
console.log(greeting);
C:\Users\CaitlinG>tsc greet.ts
node_modules/@types/mongodb/index.d.ts:482:22-错误TS2304:找不到名称“PromiseConstructor”。
482允诺人图书馆?:允诺人建造师;
~~~~~~~~~~~~~~~~~~
node_modules/@types/mongoose/index.d.ts:1706:26-错误TS2507:类型“MapConstructor”不是构造函数函数类型。
1706类映射扩展了global.Map{
~~~~~~~~~~
node_modules/@types/mongoose/index.d.ts:1716:37-错误TS2583:找不到名称“Map”。是否需要更改目标库?请尝试更改“l”
ib` es2015或更高版本的编译器选项。
1716接口全局映射扩展映射{}
~~~
node_modules/@types/webgl2/index.d.ts:582:13-错误TS2403:后续变量声明必须具有相同的类型。变量“WebGL2RenderingConte”
xt'的类型必须为“{new():WebGL2RenderingContext;原型:WebGL2RenderingContext;只读活动\u属性:编号;只读活动\u纹理:
number;…556更多…;readonly WAIT_失败:number;}',但这里有类型“{new():WebGL2RenderingContext;prototype:WebGL2RenderingContext;r
eadonly活动\u属性:编号;只读活动\u纹理:编号;…557更多…;只读最大\u客户端\u等待\u超时\u WEBGL:number;}。
582声明变量WebGL2RenderingContext:{
~~~~~~~~~~~~~~~~~~~~~~
AppData/Roaming/npm/node_modules/typescript/lib/lib.dom.d.ts:16316:13
16316声明变量WebGL2RenderingContext:{
~~~~~~~~~~~~~~~~~~~~~~
这里还声明了“WebGL2RenderingContext”。

我不明白如何解决这些问题。

请尝试在您的tsconfig中添加以下内容

"compilerOptions": {
    "lib": ["dom", "es6"]
}

要么您没有向我们显示所有的
greet.ts
,要么您的系统出现了严重问题。共享您的tsconfig。在驱动器的根目录中创建一个新文件夹。在该文件夹中创建一个新的文本文件。仅将这两行复制到该文本文件中。重命名文本文件
greet.ts
。打开Windows命令行。导航到新的f您创建的较旧。键入
tsc greet.ts
并按Enter键。如果仍然出现相同的错误,那么我们将讨论一些问题。我猜您的
tsconfig
缺少相应的
编译器选项。target
compileoptions.lib
设置。快速插入您的代码将显示它按预期工作。我怀疑是配置问题,因为堆栈跟踪正在抱怨来自
@types/mongodb
的构造函数,该构造函数没有从源代码引用(至少没有直接引用)。错误仍然存在,但创建了js文件。这似乎很奇怪。我使用的是最新版本的Node 14.4.0。这会造成问题吗?您是否尝试退出节点终端并再次运行它?在vscode内部或在命令行上运行Node,然后在节点提示符下运行typescript程序,“>”?退出所有终端,只打开一个命令行或vs代码的终端,然后再次运行该命令。我这样做了。错误仍然存在。我在命令行上运行:tsc greet.ts(不是在vscode中)。我添加了“compilerOptions”:{“lib”:[“dom”,“es6”]}