Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 需要解决办法来制作WebStorm';s autocompletion能够解析第三方模块方法_Javascript_Node.js_Webstorm - Fatal编程技术网

Javascript 需要解决办法来制作WebStorm';s autocompletion能够解析第三方模块方法

Javascript 需要解决办法来制作WebStorm';s autocompletion能够解析第三方模块方法,javascript,node.js,webstorm,Javascript,Node.js,Webstorm,几乎对于所有第三方模块,WebStorm的自动编译都无法解析方法/字段。在“自动完成”下,我指的是所有类似智能感知的功能。 例如: var async = require('async'); async.series() //WebStorm's tooltip says: Unresolved function or method series() 同时它解决了 async.exports.series(). 但这会导致运行时错误: TypeError: Cannot call meth

几乎对于所有第三方模块,WebStorm的自动编译都无法解析方法/字段。在“自动完成”下,我指的是所有类似智能感知的功能。 例如:

var async = require('async');
async.series() //WebStorm's tooltip says: Unresolved function or method series()
同时它解决了

async.exports.series(). 
但这会导致运行时错误:

TypeError: Cannot call method 'series' of undefined
对于我自己的模块,我找到了解决方法。如果我在模块中执行以下操作:

var myModule = module.exports;
myModule.someMethod = function(){
...
}
然后,someMethod的自动编译工作正常

关于以上所有内容,我有一大堆问题。
1.ide解析async.series()失败的原因?
2.为什么async.exports.series()会导致运行时错误?
3.如何使自动完成工作

WebStorm 5.0.4.

使用新版本,如下所示:

var async = new require('async');

转到设置->JavaScript->库->检查“Node.js Globals”

新WebStorm v7能够为流行模块定义Typescript社区存根。这部分解决了自动完成和IDE警告的问题

对于不太受欢迎的模块,我更喜欢使用这种丑陋的欺骗:

//noinspection ConstantConditionalExpressionJS,JSPotentiallyInvalidConstructorUsage
var async = false ? new require('async') : require('async');
然而,当属性通过某种算法(例如迭代文件系统)附加到模块时,这并不能解决问题。对于小型和不受欢迎的模块,这是一种罕见的情况


顺便说一句,async已经安装了typescript存根git@github.com:borisyankov/DefinitelyTyped.git repository.

谢谢您的帮助。。。1.我想了解它是如何平息网络风暴的。2.如果这对正常的node.js使用有不良的副作用,我已经选择了这个设置,但是我仍然看到了问题。还有线索吗?这应该是正确答案。为我解决了这个问题。很奇怪,但是像
var connect=require('connect')||也为我工作。