TypeScript 中的代码检查和快速修复
ReSharper 的代码分析关键功能也支持 TypeScript。 您可以在 代码分析 部分的相应主题中找到有关这些功能的详细信息。 在该部分的主要主题中,您还可以找到功能矩阵并检查 TypeScript 中具体支持的内容。
在本主题中,您可以找到一些在 TypeScript 中使用代码分析功能的示例。
代码检查
ReSharper 的 代码检查会检测 TypeScript 文件中的编译器错误和其他代码问题。 默认情况下,TypeScript 代码会在 设计时进行检查。 如果需要,您还可以在 特定范围内运行代码检查:

代码检查行为以及 代码生成结果取决于 TypeScript 项目设置。 在 Visual Studio 2013 及更高版本中,您可以在项目属性编辑器中配置前两个设置(右键单击项目并选择 属性)。 在 Visual Studio 2012 中,您只能通过手动编辑项目文件 .csproj 来更改这些属性。
- TargetEsVersion(ECMAScript 版本)
如果版本低于 5,ReSharper 会将
get和set的使用检测为错误。 如果版本为 5 或更高,则 ReSharper 会将八进制字面量检测为错误,并建议将其替换为十六进制或十进制字面量。- NotImplicitAny(允许隐式 'any' 类型)
根据此属性,ReSharper 要么将隐式 'any' 类型(例如
var a; a = 5;)检测为错误,要么不检测。- TypeScriptNoResolve
如果此选项设置为 'true',ReSharper 会将外部模块的使用检测为错误。
代码检查行为还取决于在 ReSharper 选项 的 页面上配置的选项 Alt+R, O 。 更多信息,请参阅 TypeScript 中的代码样式辅助。
快速修复
快速修复可让您自动解决代码检查发现的大多数代码问题。 如果某个代码问题有一个或多个快速修复可用,当您的光标位于高亮代码上时,您将看到相应的 操作指示器。 按 Alt+Enter 查看并应用所需的修复。
ReSharper 为 TypeScript 提供了数十种快速修复。 以下是一些示例:
添加缺失的导入
如果 ReSharper 检测到当前文件中未导入的类型,它会高亮显示并建议一次性添加所有缺失的导入。 更多信息,请参阅 导入缺失的命名空间。

实现缺少的成员
ReSharper 建议自动生成未实现的成员:

正确重命名函数重载
如果函数重载的名称由于拼写错误而不一致,ReSharper 会高亮显示不匹配的名称并建议快速修复:

设置为 public/private
默认情况下,成员的可访问性是 public,但如果您明确将函数指定为 private,则其所有重载都应具有相同的修饰符。 如果不是这样,ReSharper 会高亮显示并建议更改。

添加类型注解
当未指定类型时,变量会被高亮显示。 按 Alt+Enter 显示快速修复列表并应用以下修复。 将添加必要的类型注解。

移除问号
在 TypeScript 中,可选参数不能有默认值。 如果它们意外有默认值,您可以移除问号或移除初始化器。

移除环境函数体
您的代码中没有必要保留不必要的结构。 为了使代码更具可读性,ReSharper 建议移除环境函数体,例如。

使 ReSharper 忽略特定代码
为了从代码分析、导航和其他功能中排除解决方案代码的部分内容,ReSharper 允许您以不同方式 忽略特定文件、文件夹和文件掩码。
为了提高性能,ReSharper 还会自动检测并开始忽略没有引用且可能是误添加到解决方案中的大型 Web 文件。
如果检测到任何此类文件,您将看到一条通知,您可以在需要时停止忽略这些文件中的任何一个。 您还可以在 ReSharper 选项 的 页面上找到所有自动忽略的文件。
要停止自动检测和忽略大型未使用的 Web 文件,请在 ReSharper 选项 的 页面上清除 搜索可能影响性能的 Web 文件并将其排除在索引编制范围外 复选框。