Node.js无法识别新模块
[在Windows上工作,节点为0.10.5] 我试图用强大的node模块构建一些简单的东西。我在全球安装了它-Node.js无法识别新模块,node.js,formidable,Node.js,Formidable,[在Windows上工作,节点为0.10.5] 我试图用强大的node模块构建一些简单的东西。我在全球安装了它- npm install -g formidable npm http GET https://registry.npmjs.org/formidable npm http 304 https://registry.npmjs.org/formidable npm WARN engine formidable@1.0.13: wanted: {"node":"<0.9.0"}
npm install -g formidable
npm http GET https://registry.npmjs.org/formidable
npm http 304 https://registry.npmjs.org/formidable
npm WARN engine formidable@1.0.13: wanted: {"node":"<0.9.0"} (current:{"node":"v0.10.5","npm":"1.2.18"})
formidable@1.0.13 C:\Users\me\AppData\Roaming\npm\node_modules\formidable
现在,我的问题是:
过去,当我遇到这样的问题时,它与
NODE\u PATH
有关。我猜你的路径C:\Users\me\AppData\Roaming\npm\node\u modules\emdable
不在node\u路径中,所以即使它是“全局”安装的,你的安装也看不到它
请参阅有关NODE_PATH的官方文档,并使用Windows命令行上的命令检查NODE_PATH的值。您如何要求()它?var undervable=require(“undervable”);我现在确实发现,如果我将node_模块复制到项目的根目录中,它就会工作。但是如果是这种情况,那么全局安装有什么意义?为什么要全局安装?依赖项应在本地安装。您是否仍然需要在项目文件夹中执行npm链接?或者像@josh3736那样安装locally实际上,我的节点路径没有设置。谢谢很高兴这有帮助。我也建议您考虑为什么要在其他评论中指出全局安装。我发现一个合理的规则在这里和其他节点站点上重复了几次,就是“本地安装面向外部的应用程序,全局安装基于节点的命令行实用程序”。
D:\Work\Node\Test4>node index.js
module.js:340
throw err;
^
Error: Cannot find module 'formidable'
Blah blah blah