假设我有这个文件1.js:
function MyClass() { }
MyClass.prototype = {
getName: function(){
return this.name;
},
setName: function(name){
this.name = name;
}
};
module.exports = MyClass;
在file2.js中:
var MyClass = require('./file1');
var x = new MyClass();
x.setName('Bob');
console.log(x.getName());
事情是,从file1.js,我希望能够找到MyClass的所有用法。
我尝试在MyClass上使用Ctrl + G命令(Find Usages),但它没有显示来自file2的用法。这很有趣,因为不知何故,WebStorm知道x是一个MyClass实例。例如,在file2时,我可以按CTRL +单击x = new MyClass()
行,它直接转到file1.js上的定义。我甚至能够从file1中找到getName / setName方法的用法,并且它正确地显示它,它甚至不是'word'搜索,因为我尝试使用相同的方法在第三个文件中创建另一个MyClass,只是为了检查我是否可以欺骗IDE,但Webstorm很聪明,他明确知道x是MyClass的一个实例。
那么,有没有办法实现我想要的:找到像这样的类/函数的用法?我知道我可以从文件本身找到用法,但这不是我想要的,因为我可以导出更多东西......