Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.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
Visual studio Visual Studio 2017:节点_模块中的TypeScript编译错误_Visual Studio_Angular_Typescript - Fatal编程技术网

Visual studio Visual Studio 2017:节点_模块中的TypeScript编译错误

Visual studio Visual Studio 2017:节点_模块中的TypeScript编译错误,visual-studio,angular,typescript,Visual Studio,Angular,Typescript,尝试构建Angular应用程序时,我在node_modules文件夹中收到typescript文件的complie错误 例如: TS2420:类“CdkTable”未正确实现接口 “CollectionViewer” CdkTable在@angular/cdk/typings/table/table.d.ts中 我的工具版本: 净现值-v:5.0.3 节点-v:v8.1.4 tsc-v:版本2.2.3 My tsconfig.json: { "compilerOptions": {

尝试构建Angular应用程序时,我在node_modules文件夹中收到typescript文件的complie错误

例如:

TS2420:类“CdkTable”未正确实现接口 “CollectionViewer”

CdkTable在@angular/cdk/typings/table/table.d.ts中

我的工具版本:

净现值-v:5.0.3

节点-v:v8.1.4

tsc-v:版本2.2.3

My tsconfig.json:

{
  "compilerOptions": {
    "moduleResolution": "node",
    "target": "es5",
    "sourceMap": true,
    "experimentalDecorators": true,
    "emitDecoratorMetadata": true,
    "skipDefaultLibCheck": true,
    "lib": [ "es6", "dom" ],
    "types": [ "node" ]
  },
  "exclude": [ "bin", "node_modules" ],
  "atom": { "rewriteTsconfig": false }
}

请注意,该项目可在其他计算机上编译。

我假设您的
tsc
可执行文件是通过npm安装的,并且是全局安装的

检查已安装的Visual Studio TypeScript SDK的版本。它应该位于大致如下的文件夹中:
C:\ProgramFiles(x86)\Microsoft SDK\TypeScript
。确保此版本是最新版本(或至少与全局安装的TypeScript版本相同)

还要检查环境变量,以查看路径中是否有其他版本。VisualStudio的MSBuild进程使用,它将从SDK安装中获取类型脚本。这解释了命令行输出(使用全局安装的tsc)与Visual Studio输出之间的差异

此外,在VisualStudio项目中使用tsconfig也存在一些问题。我知道它应该得到充分的支持,但是仍然有很多人报告我所研究的问题。这可能是因为在项目上单击鼠标右键并选择“属性”时,您可能希望删除tsconfig,而使用可用的TypeScript选项卡


或者,您可以尝试设置
rootDir
compiler选项,以找出实际需要编译的TypeScript文件的目录。我知道
excludes
应该可以防止这种情况发生,但是,Visual Studio可能会以某种方式在tsconfig上打嗝。

在“C:\Program Files(x86)\Microsoft SDK\TypeScript”中,我有几个版本,我删除了最新的版本-它是2.4,现在正在运行是的,2.4更严格。这已经引起了很多人的问题。