重构:如何替换类型(和更新导入)?
Refactoring: How to replace a type (and update imports)?
即目前我们在代码库中使用来自 npm 包 @old-package
的类型 OldType
。
我们想用我们自己的类型NewType
替换它,可以通过@new-package
导入。
例子
旧进口
import {
AnyImport,
OldType,
AnotherImport
} from '@old-package';
应更新为:
新导入
import {
AnyImport,
AnotherImport
} from '@old-package';
import { NewType } from '@new-package';
我们如何在 IntelliJ 中进行重构,以便正确更新导入语句?
备注:
- 我认为简单的替换 RegEx 是行不通的,因为旧的导入可能是多行中的许多导入之一
- 我检查了 IntelliJ Migrate 功能,但它似乎只适用于 Java 代码
- 我检查了 Structural search and replace 功能,但无法使其适用于我的情况
因为这是一个开关操作,所以也可以,如果这可以在另一个 IDE 或通过命令行工具等完成
目前不supported/implemented 导入的结构搜索(相关功能请求:IDEA-285199)。
您可以尝试网络上提供的一些解决方案,例如 https://www.npmjs.com/package/refactor-imports?activeTab=readme,请参阅
即目前我们在代码库中使用来自 npm 包 @old-package
的类型 OldType
。
我们想用我们自己的类型NewType
替换它,可以通过@new-package
导入。
例子
旧进口
import {
AnyImport,
OldType,
AnotherImport
} from '@old-package';
应更新为:
新导入
import {
AnyImport,
AnotherImport
} from '@old-package';
import { NewType } from '@new-package';
我们如何在 IntelliJ 中进行重构,以便正确更新导入语句?
备注:
- 我认为简单的替换 RegEx 是行不通的,因为旧的导入可能是多行中的许多导入之一
- 我检查了 IntelliJ Migrate 功能,但它似乎只适用于 Java 代码
- 我检查了 Structural search and replace 功能,但无法使其适用于我的情况
因为这是一个开关操作,所以也可以,如果这可以在另一个 IDE 或通过命令行工具等完成
目前不supported/implemented 导入的结构搜索(相关功能请求:IDEA-285199)。 您可以尝试网络上提供的一些解决方案,例如 https://www.npmjs.com/package/refactor-imports?activeTab=readme,请参阅