Javascript Node.js-显示';未找到模块';

Javascript Node.js-显示';未找到模块';,javascript,node.js,Javascript,Node.js,我正在为一个项目使用Node.js。我使用 npm安装-g webdriverio 在我的一个文件中,我有: file.js var webdriverio = require('webdriverio'); 加载此文件时,控制台中出现一个错误,显示: Message: Cannot find module 'webdriverio' Details: code: MODULE_NOT_FOUND 如果我注释掉行var webdriverio=…,我的代码运行良好 考虑到我已

我正在为一个项目使用Node.js。我使用

npm安装-g webdriverio

在我的一个文件中,我有:

file.js

var webdriverio = require('webdriverio');
加载此文件时,控制台中出现一个错误,显示:

Message:
    Cannot find module 'webdriverio'
Details:
    code: MODULE_NOT_FOUND
如果我注释掉行
var webdriverio=…
,我的代码运行良好


考虑到我已经在全球范围内安装了WebDrivero,我不明白为什么会出现这个问题。

如果您的应用程序在本地需要它,请在应用程序的根目录中运行
npm install webdrivero

节点仅在
节点模块
文件夹中查找模块(从当前文件夹开始,然后查看上面的文件夹)。为了使其正常工作,您还必须在本地安装此软件包

npm install webdriverio

Node.js
require
查看本地
Node\u模块
文件夹

检查此链接以了解如何从全局模块文件夹加载模块:

如果NODE_PATH环境变量设置为冒号分隔的列表 对于绝对路径,则节点将在这些路径中搜索模块,如果 它们在别处找不到。(注意:在Windows上,节点路径为 由分号而不是冒号分隔。)


当您在全球范围内安装时,您应该转到应用程序的根目录并呼叫:

npm链接WebDrivero


注意:无需调用npm install,因为您将有两个单独的此模块安装,一个在全局,另一个在本地node_modules文件夹中。您可以使用完整的全局路径:

const wdio = require('/usr/local/lib/node_modules/webdriverio');

这应该是正确的答案;在不同的项目中多次安装或安装两次(全局和本地)都没有意义