phpStorm 7如何从对象修复NodeJS / Javascript未解析的函数

时间:2014-04-05 11:18:50

标签: phpstorm webstorm

我有以下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;消息?

1 个答案:

答案 0 :(得分:0)

记录herehere的一些记录返回对象属性的方法。但是它们都不会在WebStorm中实际工作。在没有JSDoc的情况下,属性解析应该适用于您的情况。记录为WEB-11755