我正在使用 WebStorm 5.0.4 开发 node.js 应用程序。
我使用全局安装了几个节点模块
npm install -g 模块名称并使用将它们链接到项目中
npm 链接模块名称
自动补全不适用于任何 npm 安装的模块。它仅适用于核心模块(例如http
or path
)。
此外,对于我从 npm 安装的模块调用的任何函数,WebStorm 都会给出警告“未解析的函数或方法 xyz”。
如何使 WebStorm 自动完成并通常了解我安装的模块require
?
我正在使用 WebStorm 5.0.4 开发 node.js 应用程序。
我使用全局安装了几个节点模块
npm install -g 模块名称并使用将它们链接到项目中
npm 链接模块名称
自动补全不适用于任何 npm 安装的模块。它仅适用于核心模块(例如http
or path
)。
此外,对于我从 npm 安装的模块调用的任何函数,WebStorm 都会给出警告“未解析的函数或方法 xyz”。
如何使 WebStorm 自动完成并通常了解我安装的模块require
?
我不确定这是否说明了您的特殊情况,但是我在 WebStorm 5.0.4 中遇到了类似的问题,而所需的任何内容都不会自动完成。我可以通过进入我的项目设置,导航到 JavaScript | 来解决这个问题。库,检查“Node.js 核心模块”和“Node.js 全局”,然后单击应用。
我的答案仅适用于 WebStorm 7 及以后的版本:
打开设置对话框(文件 | 默认设置)并选择 JavaScript | 节点.js。
指定 Node.js 解释器的路径,Node.js 版本将自动确定。
单击配置,然后单击“下载和配置”按钮将 Node.js 源下载到 IntelliJ 系统本地文件夹。将从提取的核心模块源文件中创建一个名为“Node.js v. Core Library”的 JavaScript 库。
最后为刚刚创建的 JavaScript 库定义一个使用范围。默认情况下,整个项目将被添加到使用范围。如果这对您不起作用,您可以通过单击“编辑使用范围”超链接来调整使用范围。
如果您需要更多信息,请阅读 JetBrain 的官方博客关于附加 Node.js 核心模块的源代码,这应该可以理想地解决您的问题,至少它实际上对我有用。
根据我在评论中发布的链接,您需要使用
Preferences -> Directories添加全局 npm 目录
您可以通过运行以下命令找出您的全局目录在哪里:
> npm ls -g
当您使用逗号声明多个模块时会发生这种情况,例如:
var sys = require("sys"),
http= require("http");
在上面的示例中,sys 只会将导出作为自动完成选项,而 http 可以正常工作。如果你这样做:
var sys = require("sys");
var http= require("http");
sys 和 http 都可以正常工作。