我有以下NodeJS模块
/**
* @param {string} a
* @param {string} b
* @return {Object}
*/
module.exports = function(a, b) {
return {
foo: function(a, b, c) {}
};
}
然后我加载模块并尝试使用结果
var Factory = require("./my-module.js");
var configuredObject = Factory(1, 2);
configuredObject.foo(1, 2, 3); <-- Unresolved function or method foo()
我看了一些关于SO和related links的其他建议但是复制Object的轮廓以便我可以使用JSDoc的建议看起来非常脏,因为我必须手动将大纲复制/粘贴到模块的每个用户,这很乏味,当然非常容易出错,例如:
var MyModuleOutline = {
foo: function(a, b, c) {}
}
/** @type {MyModuleOutline} */
var configuredObject = Factory(1, 2);
我使用的是phpStorm 7.1,我希望我已经对代码完成/理解进行了改进,但我还不知道。
我还可以做些什么来移除&#34;未解决的功能&#34;消息?