如何在node.js的node.exe中正确地要求节点模块

时间:2011-10-25 08:22:02

标签: windows node.js module socket.io npm

最近有一个较新版本的node.js支持npm for windows。

我按照说明here 我通过npm在windows上成功安装了socket.io(虽然有些失败,比如JSDOM)

但是,当我需要该模块时,以下内容失败:

var io = require("socket.io").listen(1234); 

以及

var io = require("./lib/node_modules/socket.io/index.js").listen(1234);

显示“无法找到模块”socket.io“

然而这有效:

var io = require('/NodeDev/lib/node_modules/socket.io/index.js').listen(1234);

这是我放置的东西:

  

文件夹socket.io:在D:\ NodeDev \ lib \ node_modules \

中      

node.exe:在D:\ NodeDev \ bin \

中      

我的脚本:在D:\ NodeDev \ TestProject \

1 个答案:

答案 0 :(得分:14)

在处理Windows中常用的软件包时遇到了类似的问题。当我将软件包直接安装到我的项目中时,它可以工作:

cd myProject
npm install socket.io

然后将其安装到myProject/node_modules文件夹中。那时,require('socket.io')为我工作。