为什么 JetBrains IDE 一直说 Class 和 Constructor 未使用?
Why is the JetBrains IDE keeps saying Class and Constructor are unused?
我的 PhpStorm / WebStorm IDE 一直在说,class
和 constructor
未用于某些 classes(并非全部)。我已经将 JavaScript 语言版本设置为 ECMAScript6
并在设置中启用了 Node.js 支持。一般的代码也可以正常工作。例如...
文件TestClass.js:
module.exports = class Test {
constructor() {
console.log("Test.constructor");
}
test() {
console.log("Test.test");
}
}
文件Test.js:
let Test = require("./TestClass");
let inst = new Test();
inst.test();
有了这个,代码检查不断告诉我:
Unused class TestClass
Unused method constructor
有什么问题或者有办法抑制警告吗? IDE 通常不显示抑制此选项的选项。
另一个问题似乎是,匿名 classed 也会导致检查问题。如果我将 module.exports = class Test {
重写为 module.exports = class {
,即使 class 中的方法 test()
也会被标记为 unused
。我也没有找到防止这种情况发生的方法...
看来我只需要在这里问一下,自己寻找答案。 ;)
问题似乎属于 class
的内联导出。当先创建 class
,然后 export
然后 class name
解决问题时。
所以我只需要像这样重写我的 class 文件:
class Test { // instead of module.exports = class Test {
constructor() {
console.log("Test.constructor");
}
}
module.exports = Test; // put the export to an extra line
我的 PhpStorm / WebStorm IDE 一直在说,class
和 constructor
未用于某些 classes(并非全部)。我已经将 JavaScript 语言版本设置为 ECMAScript6
并在设置中启用了 Node.js 支持。一般的代码也可以正常工作。例如...
文件TestClass.js:
module.exports = class Test {
constructor() {
console.log("Test.constructor");
}
test() {
console.log("Test.test");
}
}
文件Test.js:
let Test = require("./TestClass");
let inst = new Test();
inst.test();
有了这个,代码检查不断告诉我:
Unused class TestClass
Unused method constructor
有什么问题或者有办法抑制警告吗? IDE 通常不显示抑制此选项的选项。
另一个问题似乎是,匿名 classed 也会导致检查问题。如果我将 module.exports = class Test {
重写为 module.exports = class {
,即使 class 中的方法 test()
也会被标记为 unused
。我也没有找到防止这种情况发生的方法...
看来我只需要在这里问一下,自己寻找答案。 ;)
问题似乎属于 class
的内联导出。当先创建 class
,然后 export
然后 class name
解决问题时。
所以我只需要像这样重写我的 class 文件:
class Test { // instead of module.exports = class Test {
constructor() {
console.log("Test.constructor");
}
}
module.exports = Test; // put the export to an extra line