nodejs require模块找不到怎么解决? - 网站

nodejs require模块找不到怎么解决?

分类:Node.js常见问题 · 发布时间:2019-07-29 14:49 · 阅读:3474

用npm全局安装模块后,有时在程序使用的时候require会报找不到模块,要如何解决?nodejs是在module.paths包含的目录列表中寻找模块的,所以,要解决这个问题就是将全局模块加入到module.paths目录列表中。

全局安装模块后在程序里面require这个模块报错,模块找不到。如下图所示,首先按照正常的方式npm install -g express全局安装express模块。然后在测试require('express')报错。

1.jpg-600

那么问题就出在nodejs怎么查找模块上。首先,我们要知道npm全局安装到底把模块安装到了哪个目录下面。在终端运行npm prefix -g命令会打印出安装路径。而nodejs查找模块是在module.paths目录列表下面查找的。

eb496704cf096b43307494663b83ce1.png-600

所以,一种解决方案是在程序中将npm全局安装路径添加到module.paths中。

module.paths.push('全局安装路径')。然后再测试可行。

这种方案只对当前js有效。

2.jpg-600

另一种是添加环境变量NODE_PATH,值就设置成全局安装路径。如图中所示,添加后测试可行。

f648b4d1684ff3a555a8dd48442f0a2.png-600

c99a86b5c44d6f625b50a39009fa178.png-600

其实,添加环境变量NODE_PATH后,我们再去查看module.paths时会发现环境变量中的路径也已经在module.paths中了。

所以,最方便的解决办法就是:npm prefix -g 找到全局安装的路径,然后添加到环境变量NODE_PATH中。

c26cc6d2f7b91870411e11721448de5.png-600

标签:
nodejs require模块

相关文章

如何设置 nodejs 的环境变量

在前端开发过程中,我们需要对 application 运行的环境进行设置,一般会包括开发环境development,生产环境production,每个环境可以对应不同的一些配置,例如不同环境下请求的地址...

谈谈Node.js与JavaScript的差异

Javascript是一种web前端语言,主要用于web开发中,由浏览器解析执行。Node.js是一个可以快速构建网络服务及应用的平台,是用Javascript语言构建的服务平台。

npm install安装报错怎么解决?

解决方法:1、报“operation not permitted”错误,通过“npm i 包名 --no-optional”解决;2、报“Missing: chromedriver”错误,表示没有安装chromedriver,安装一下即可。

怎么使用npm下载vue.js?

使用npm下载vue.js的方法:1、安装node.js和npm;2、安装cnpm;3、使用命令cnpm install -g vue-cli来安装即可。

vue.js和node.js是什么关系?

vue.js和node.js并没有关系,vue.js是前端框架,算是js的三大框架之一吧,node.js是后端开发语言,同php、java、c#一样的。但是他们可以配合使用。

返回分类 返回首页