是否可以自动更新两个不同目录中的变量名称

时间:2016-02-15 12:45:41

标签: unit-testing mocha webstorm

我使用Webstorm使用测试框架Mocha测试Javascript代码。我想提供我的变量和函数名称,以便以最佳方式直观地理解我的代码。因此,我经常重命名我的变量和函数。

因此,如果我在同一个项目中的file1.js文件夹中包含以下内容的lib

var foo = 'I am a variable';

test_of_file1.jstest文件夹中,其中包含以下内容:

var foo = 'I am a variable';

我在file1.js中使用Webstorm的重构工具将foo重命名为boo我希望此更改在两个文件中生效。我不使用JsDoc来记录代码或Git来跟踪任何更改(不确定是否相关)。我尝试过使用重构,但它只在file1.js生效。

如何让它在两个文件中生效?

1 个答案:

答案 0 :(得分:1)

你混合了两个概念。

当您重命名某些内容(,例如在许多其他模块中调用的文件)时,Webstorm将重构包含此类引用的所有文件。

在您的情况下,您实际上是“替换”var的名称。但是文件1中的var foo不是对文件2中var foo的引用。它们是两个完全不同的东西。

根据您的描述,您需要做一个FIND&对项目进行REPLACE操作&测试文件。 但要小心,并确保检查每个查找/替换操作。

上述问题是您仅在打开的文件中重构(或查找/替换)。那不行。您需要在项目选项卡中选择项目文件夹应包含项目文件和测试文件)并输入: CTRL + SHIFT + R 可能在Windows上不同)来进行项目范围的查找/替换。