我使用Webstorm使用测试框架Mocha测试Javascript代码。我想提供我的变量和函数名称,以便以最佳方式直观地理解我的代码。因此,我经常重命名我的变量和函数。
因此,如果我在同一个项目中的file1.js
文件夹中包含以下内容的lib
:
var foo = 'I am a variable';
和test_of_file1.js
在test
文件夹中,其中包含以下内容:
var foo = 'I am a variable';
我在file1.js
中使用Webstorm的重构工具将foo
重命名为boo
我希望此更改在两个文件中生效。我不使用JsDoc来记录代码或Git来跟踪任何更改(不确定是否相关)。我尝试过使用重构,但它只在file1.js
生效。
如何让它在两个文件中生效?
答案 0 :(得分:1)
你混合了两个概念。
当您重命名某些内容(,例如在许多其他模块中调用的文件)时,Webstorm将重构包含此类引用的所有文件。
在您的情况下,您实际上是“替换”var的名称。但是文件1中的var foo不是对文件2中var foo的引用。它们是两个完全不同的东西。
根据您的描述,您需要做一个FIND&对项目进行REPLACE操作&测试文件。 但要小心,并确保检查每个查找/替换操作。
上述问题是您仅在打开的文件中重构(或查找/替换)。那不行。您需要在项目选项卡中选择项目文件夹(应包含项目文件和测试文件)并输入: CTRL + SHIFT + R (可能在Windows上不同)来进行项目范围的查找/替换。