2017-01-29 23 views
0

由JetBrains的WebStorm/PhpStorm考虑当地的JavaScript变量可以就地上的Shift + F6改名:变量不在WebStorm/PhpStorm视为当地的重命名重构

不幸的是,这只有当变量由于函数范围而具有局部范围时才会发生。

当前项目是ES6 Node.js,这意味着所有新定义的变量都是本地的。但CommonJS的模块范围没有考虑到,和块作用域变量不考虑当地的为好,IDE试图在他们整个项目的全局命名上的Shift + F6:

这成为令人沮丧。在一个大型项目中,“寻找用法”非常缓慢,其他项目文件中不需要的重命名的风险太高,因此多光标编辑和Ctrl + R搜索/替换效率更高。

该项目package.json文件在其根,ECMAScript 6Languages & Frameworks/JavaScriptECMAScript 6,在Languages & Frameworks/JavaScript/LibrariesNode.js Core启用。

这怎么处理?这是一个已知的错误吗?

+0

CommonJS模块中的块范围变量和变量在下一个WebStorm EAP中将被视为本地变量。虽然,WebStorm在这种情况下认为文件是CommonJS模块,如果它需要或导出分配。 – de1mar

+0

@ de1mar你是否也在最后一句中提到了EAP?因为我在2016年有了module.exports并需要在文件中,并没有什么不同。 – estus

+0

是的,我的意思是它从来没有像你写的那样工作,但我已经修复了它,并且在下一个WebStorm 2017.1 EAP中修复将可用。 – de1mar

回答

0

根据@ de1mar,这已被修复,并将在WebStorm 2017.1 EAP中提供。