【问题标题】:Why do I get "Cannot find module 'angular2/core'" Intellisense errors in Visual Studio 2015为什么在 Visual Studio 2015 中出现“找不到模块 'angular2/core'”智能感知错误
【发布时间】:2016-08-10 14:59:36
【问题描述】:

我正在使用带有 TypeScript 1.8.5 的 Visual Studio 2015 Update 1。

我有一个使用 Angular2 的 ASP.NET MVC 4.6 Web 应用程序。

我使用以下设置设置了我的 TypeScript 编译选项:

 <PropertyGroup>
  <TypeScriptTarget>ES5</TypeScriptTarget>
  <TypeScriptJSXEmit>None</TypeScriptJSXEmit>
  <TypeScriptCompileOnSaveEnabled>True</TypeScriptCompileOnSaveEnabled>
  <TypeScriptNoImplicitAny>False</TypeScriptNoImplicitAny>
  <TypeScriptModuleKind>System</TypeScriptModuleKind>
  <TypeScriptModuleResolution>node</TypeScriptModuleResolution>
  <TypeScriptRemoveComments>False</TypeScriptRemoveComments>
  <TypeScriptOutFile />
  <TypeScriptOutDir />
  <TypeScriptGeneratesDeclarations>False</TypeScriptGeneratesDeclarations>
  <TypeScriptNoEmitOnError>True</TypeScriptNoEmitOnError>
  <TypeScriptSourceMap>True</TypeScriptSourceMap>
  <TypeScriptMapRoot />
  <TypeScriptSourceRoot />
  <TypeScriptExperimentalDecorators>True</TypeScriptExperimentalDecorators>
</PropertyGroup>

ErrorList 不包含构建错误,但确实包含 Intellisense 错误,如下所示:

 Cannot find module 'angular2/core'

但是 Angular2 以及我所有的其他依赖项都在它们应该在的地方,在 node_modules 文件夹下。

所以 TypeScript 编译成功到 JavaScript 并且生成的 JavaScript 在运行时工作,但我在 Visual Studio 环境中看到 Intellisense 错误我的应用程序的大部分 TypeScript 文件。

此外,我所依赖的一些组件,例如 ag-grid-ng2,在 node_modules 下有适当的 TypeScript 定义文件,但 Intellisense 将它们视为没有输入(换句话说,输入为“任何”)

为什么?

【问题讨论】:

    标签: typescript visual-studio-2015 angular


    【解决方案1】:

    问题已通过以下方式解决:

    1. &lt;TypeScriptModuleKind&gt; 设置从 System 更改为 CommonJs
    2. 重新启动 Visual Studio 完全

    不要跳过第 2 步。不,卸载和重新加载项目将无济于事。

    我不确定为什么 Intellisense 错误在 Visual Studio 重新启动之前不会消失,但这是我们的解决方法。

    【讨论】:

      猜你喜欢
      • 2015-02-25
      • 2016-03-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-06
      • 2016-08-16
      • 2017-04-26
      • 1970-01-01
      相关资源
      最近更新 更多