【问题标题】:Value in Cleaning up unneeded import statements Typescript/Angular清理不需要的导入语句 Typescript/Angular 的价值
【发布时间】:2019-06-29 21:37:09
【问题描述】:

Visual Code 可以很好地显示未使用的导入:

让初级开发人员/实习生检查并删除所有未使用的导入和相对大小合适的 Angular 7 除了代码整洁之外还有什么好处吗?

是否有可能提高应用程序的大小/性能?

【问题讨论】:

  • 您的组织是否使用摇树?
  • 我们有,我忘了摇树 :)
  • 在这种情况下,这样的事情应该字面上零差异。
  • 要自动完成此操作,请尝试 tslint-etc 的 no-unused-declaration ref stackoverflow.com/a/57420207/5499369

标签: angular typescript


【解决方案1】:

以下是针对不同阶段的两种解决方案:

  1. 在代码编写阶段

您可以使用代码编辑器功能删除未使用的导入变量。例如vscode 提供了一个功能run-code-actions-on-save

在你的settings.json vscode 文件中添加以下配置:

{
  "[typescript]": {
    "editor.codeActionsOnSave": {
      "source.organizeImports": true
    }
  }
}

它将删除未使用的导入变量并组织您的导入语句。

  1. 在编译阶段

就像@mwilson 说的,tsc、aot 编译或webpack 并做这种工作。

【讨论】:

    【解决方案2】:

    这完全取决于您和您的喜好。如果您将它们留在其中并使用角度 AOT 编译,则完成 Tree Shaking。您可以在此处阅读有关该过程的更多信息 (https://angular.io/guide/aot-compiler)

    另一个选项(防止人们这样做)是在您的tslint.json 中启用no-unused-variable。这使您的 TypeScript Linter 禁止未使用的导入:

    不允许未使用的导入、变量、函数和私有类 成员。类似于 tsc 的 –noUnusedParameters 和 –noUnusedLocals 选项,但不会中断代码编译。

    https://palantir.github.io/tslint/rules/no-unused-variable/

    我个人只会启用 tslint 规则,运行 linter,找出有多少引用未使用,然后确定是否值得让某人检查所有这些 lint 错误并修复它们。

    【讨论】:

      猜你喜欢
      • 2021-01-08
      • 1970-01-01
      • 2020-04-04
      • 2017-10-19
      • 1970-01-01
      • 1970-01-01
      • 2016-10-29
      • 2023-04-10
      • 2021-01-22
      相关资源
      最近更新 更多