是否有一些Visual Studio Code的插件或其他方法可以帮助我们快速有效地整理和组织导入和引用?

例如,可能有数百个这样的导入

import { AutoCompleteModule,InputSwitchModule } from 'primeng/primeng';
import { ListboxModule } from 'primeng/primeng';

可以转换成类似的吗

import { AutoCompleteModule,
         InputSwitchModule,
         ListboxModule  } from 'primeng/primeng';

或者其他功能 自动从app.module或整个项目的所有组件中删除那些未使用的导入和声明?

感谢您的反馈!


当前回答

自从VSCode v.1.24和TypeScript v.2.9组织导入被加入:

Mac: option+Shift+O

对于赢:Alt+Shift+O

其他回答

在这个帖子里已经有很多好的答案了!我将发布这篇文章来帮助那些试图自动做到这一点的人!为了自动删除整个项目中未使用的导入,这篇文章对我非常有帮助。

在文章中,作者是这样解释的:

制作一个独立的斜纹棉布。Json文件,其中包含以下内容:

{
  "extends": ["tslint-etc"],
  "rules": {
    "no-unused-declaration": true
  }
}

然后执行以下命令修复导入:

 tslint --config tslint-imports.json --fix --project .

考虑修复它抛出的任何其他错误。(我)

然后通过构建它来检查项目工作:

ng build

or

ng build name_of_project --configuration=production 

结束:如果构建正确,您就成功地自动删除了导入!

注意:这只删除不必要的导入。当使用前面提到的命令时,它不提供VS Code所提供的其他特性。

从Visual Studio Code Release 1.22开始,这是免费的,不需要扩展。

Shift+Alt+O会照顾你的。

为了能够检测未使用的导入、代码或变量,请确保在tsconfig中有此选项。json文件

"compilerOptions": {
    "noUnusedLocals": true,
    "noUnusedParameters": true
}

安装typescript编译器,如果没有安装的话:

npm install -g typescript

和安装在Vcode中的tslint扩展,这对我有用,但启用后我注意到CPU使用量的增加,特别是在大项目上。

我还建议使用typescript英雄扩展来组织您的导入。

如果你是一个重度visual studio用户,你可以简单地打开你的首选项设置,并将以下内容添加到你的settings.json:

...
"editor.formatOnSave": true,
"editor.codeActionsOnSave": {
  "source.organizeImports": true
}
....

希望这对你有所帮助!

自从VSCode v.1.24和TypeScript v.2.9组织导入被加入:

Mac: option+Shift+O

对于赢:Alt+Shift+O