由JetBrains的WebStorm/PhpStorm考慮當地的JavaScript變量可以就地上的Shift + F6改名:變量不在WebStorm/PhpStorm視爲當地的重命名重構
不幸的是,這隻有當變量由於函數範圍而具有局部範圍時纔會發生。
當前項目是ES6 Node.js,這意味着所有新定義的變量都是本地的。但CommonJS的模塊範圍沒有考慮到,和塊作用域變量不考慮當地的爲好,IDE試圖在他們整個項目的全局命名上的Shift + F6:
這成爲令人沮喪。在一個大型項目中,「尋找用法」非常緩慢,其他項目文件中不需要的重命名的風險太高,因此多光標編輯和Ctrl + R搜索/替換效率更高。
該項目package.json
文件在其根,ECMAScript 6
在Languages & Frameworks/JavaScript
和ECMAScript 6
,在Languages & Frameworks/JavaScript/Libraries
Node.js Core
啓用。
這怎麼處理?這是一個已知的錯誤嗎?
CommonJS模塊中的塊範圍變量和變量在下一個WebStorm EAP中將被視爲本地變量。雖然,WebStorm在這種情況下認爲文件是CommonJS模塊,如果它需要或導出分配。 – de1mar
@ de1mar你是否也在最後一句中提到了EAP?因爲我在2016年有了module.exports並需要在文件中,並沒有什麼不同。 – estus
是的,我的意思是它從來沒有像你寫的那樣工作,但我已經修復了它,並且在下一個WebStorm 2017.1 EAP中修復將可用。 – de1mar