如何修复WebStorm无法识别某些Node.js Express属性?

时间:2013-03-18 00:13:54

标签: node.js intellij-idea express syntax-highlighting webstorm

执行express mysite和``npm install -d`后,我用WebStorm打开生成的目录,IDE无法识别以下Express方法:

app.use(express.favicon());
app.use(express.logger('dev'));
app.use(express.bodyParser());
app.use(express.methodOverride());

如何解决这个问题?

注意:在我this之后,IDE能够识别很多新东西,并在设置中将模块目录添加为JavaScript库,但仍然无法识别上述方法。查看图像以查看IDE到目前为止识别的内容enter image description here

在下图中,您可以看到IDE仍无法识别的内容:

enter image description here

1 个答案:

答案 0 :(得分:15)

这几乎适用于任何JS项目。您应该明确定义对象的属性编写JSDocs:

/**
 * @memberOf   myLib
 * or
 * @name       myLib.MyDynamicallyLoadedModule
 */
var MyDynamicallyLoadedModule = {};

否则,WebStorm无法理解您是否拥有动态属性。

(是的,我知道你在提到Express,但这就是WebStorm的工作原理)