mac下用nvm安装node.js,然后npm install jquery -g在任意目录新建一个文件01.js,里面require('jquery');执行文件 node 01.js但是报错jquery模块找不到,我去nvm里面找到对应版本的node,查看里面的lib,是看到jquery的,为什么引用不了呢?
1 回答
30秒到达战场
TA贡献1828条经验 获得超6个赞
在你的任意目录执行npm init
,然后一路回车,然后再npm install jquery
,现在这样就可以了,全局安装的东西不是说在任意一个目录都可以引用的到,题主你误解了。
下面是补充内容,来自深入浅出Node.js一书
全局模式并不是将一个模块包安装为一个全局包的意思,它并不意味着可以从任何地方通过require()
来引用到它。全局模式这个称谓其实并不精确,存在诸多误导。实际上,-g
是将一个包安装为全局可用的可执行命令。它根据包描述文件中的bin字段配置,将实际脚本链接到与Node可执行文件相同的路径下,事实上,通过全局模式安装的所有模块包都被安装进了一个统一的目录下,这个目录可以通过如下方式推算出来path.resolve(process.execPath, '..', '..', 'lib', 'node_modules')
如果Node可执行文件的位置是/usr/local/bin/node
,那么模块目录就是/usr/local/lib/node_modules
。最后,通过软链接的方式将bin字段配置的可执行文件链接到Node的可执行目录下。
添加回答
举报
0/150
提交
取消