使用WebStorm基于Node.js引入第三方库的时候,有时这些第三方库的文档里写了的方法,在自己写代码的时候没有代码提示(coding assistance),为了让自己写代码时体验好点,我们可以进行一些设置
1.JS Libraries
例如我们在引入fs-extra这个js lib的时候,该lib明明有copy这个方法,但是IDE却警告说无法解析这个方法,

明明有pathExists这个方法,IDE却无法为我们提供代码提示,没提示也就算了,还报个波浪线让人难受就很过分,怎么解决呢?

Ctrl+Alt+S打开Settings-->Languages&Frameworks-->JavaScript-->Libraries
然后点右边的Download

刚打开的时候需要加载一会儿library列表,加载好后在Download Library窗口中我们鼠标点击一下里面的内容以让焦点在list上,然后输入我们正在使用的,并且需要代码提示的library name,例如我输入了"fs-extra",找到并选中后点击Download and Install

把这两个打开的窗口关闭回到代码编写区域,我们会发现,copy方法能被解析没警告了,其他本来有的方法也有提示了,敲代码的心情一下就好多了

2.Schema
除了原有js lib的提示外,Web Storm还有个别的code assistance问题,先看看截图


我在使用mongoose的时候,定义并导出了一个model,在service层使用的时候无法解析Model的方法,并且也没有代码提示,这也让敲代码很难受,怎么做才能让我这个Category有代码提示呢?
回到category.js,把代码稍微一改就可以了:
//不要直接导出,而是先以一个对象接收后,再导出
//module.exports = mongoose.model("category", schema);
let model = mongoose.model("category", schema);
module.exports = model;
更改了这一行代码后再回到service层,model的方法能解析了,代码提示也有了,想怎么敲就怎么敲了

参考:
网友评论