【问题标题】:No IntelliSense in Visual Studio 2015 for AngularJS TypeScriptAngularJS TypeScript 的 Visual Studio 2015 中没有 IntelliSense
【发布时间】:2015-11-24 03:29:43
【问题描述】:

我在 Visual Studio 2015 的 TypeScript 中使用 ASP.NET 5 和 AngularJS 构建应用程序。但是,即使在通过 NuGet 为 AngularJS 安装了 AngularJS Core 和肯定类型的 TS 引用后,我仍然没有获得 AngularJS 的 IntelliSense图书馆。

我还在使用 ReSharper 9.1 AngularJS 扩展,它在 HTML 文件中提供 IntelliSense,但在我的 TypeScript 代码中没有。

我还注意到,即使存在对 AngularJS 和定义文件的引用,但在我的解决方案中却找不到这些文件本身。有人知道如何解决这个问题吗?

编辑:我找到了解决方案。如果您遇到同样的问题,请阅读我的回答。

【问题讨论】:

  • 与论坛网站不同,我们不会在 Stack Overflow 上使用“谢谢”、“感谢任何帮助”或签名。更多详情见Should 'Hi', 'thanks,' taglines, and salutations be removed from posts?
  • @Pitchers 具有讽刺意味的是,通过从原始帖子中删除该行并添加您的评论,您实际上已将原始帖子的大小增加了一点点。规则是为了避免这种情况......讽刺。有点适得其反。

标签: angularjs typescript visual-studio-2015 intellisense


【解决方案1】:

AngularJS Intellisense 有一个插件:

PM> Install-Package AngularJS.Intellisense

https://www.nuget.org/packages/AngularJS.Intellisense/

Resharper 阻止 JS 智能感知还有一个已知问题。把它关掉,看看有什么不同。

【讨论】:

  • 我已经安装了 AngularJS-IntelliSense 包并禁用了 ReSharper,遗憾的是没有效果。问题依然存在。
  • @MaximilianMantz 在这里尝试一些解决方案:stackoverflow.com/questions/29830266/…
  • 我已经看过这个问题,但是这是关于使用常规 JavaScript 而非 TypeScript 的 IntelliSense。
  • 谢谢你,BK。我的案例是 Resharper 阻止 TypeScript 的 JS 智能感知。
【解决方案2】:

我找到了一个解决我的问题的方法,它使用了DefinitelyTyped 定义管理器: http://definitelytyped.org/tsd/

我已经使用 NPM 全局安装了 tsd:

npm install -g tsd

然后在我的解决方案的根文件夹中使用命令提示符,我通过输入以下命令安装了 AngularJS 类型定义:

tsd install angular

它自动将类型定义下载到名为“typings/angularjs”的文件夹中,IntelliSense 开始按预期工作。

我还可以确认,使用这种方法,不需要 AngularJS Core 的 NuGet 包或 DefinitiveTyped 定义,并且 ReSharper 不会阻止 IntelliSense。

更新:

似乎 TSD 即将被弃用并被 typings project 取代。它也与 TSD 很好地集成,并为 TSD 用户提供了特定的选项。虽然 TSD 仍然可以正常工作,但请记住,将来可能不再维护 TSD。

【讨论】:

    猜你喜欢
    • 2016-01-09
    • 2017-01-06
    • 1970-01-01
    • 1970-01-01
    • 2017-01-27
    • 2015-10-13
    • 1970-01-01
    • 2015-10-27
    • 1970-01-01
    相关资源
    最近更新 更多