Please check this image here,因为我不能在这里直接显示它。我已经在全局范围内安装了socket.io模块,甚至还尝试在PushNotification目录中本地安装它。我仍然得到“错误:找不到模块'socket.io'”的错误。
发布于 2016-02-10 18:50:05
不要在全局npm (-g)中使用socket.io,在项目中本地安装它
npm -install socket.io --保存
发布于 2016-05-16 21:14:25
当您全局安装socket.io时,Node不知道在哪里可以找到它。全局模块安装实际上只适用于命令行级别的工具,这些工具必须链接到您的路径,以便您可以从节点环境外部调用它们。其中最明显的是npm,例如npm install。
当您全局安装socket.io时,您最终将其放在/usr/local/lib中,而该位置不在节点查找模块所需的位置列表中。当节点遇到require语句时,它会在几个位置进行查找:
这些位置都不匹配/usr/local/lib,因此node会抛出“找不到”错误。
阅读有关require here的更多信息。
为了回答您的另一个问题,如果您在node_modules文件夹中安装socket.io,然后在节点命令行require('socket.io')中,它将最终在您的node_modules文件夹中查找并找到socket.io,因此您可以从节点命令行内部轻松使用它。
https://stackoverflow.com/questions/35311556
复制相似问题