首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >节点module.paths混淆

节点module.paths混淆
EN

Stack Overflow用户
提问于 2015-08-14 12:57:50
回答 1查看 2.4K关注 0票数 0

节点module.paths混淆

问题:尽管我在我的module.paths应用程序中将全局路径添加到数组中,但所需的节点模块不使用我的全局main.js。

示例:

mymain.js

代码语言:javascript
复制
//global modules path
module.paths.push('C:\Users\xuser\AppData\Roaming\npm');
// finds ws in global modules path. Works!
wsmain=require('ws') 
// Now load a 3rd party module, which also requires('ws')
C = require('cmod.js');

cmod.js

代码语言:javascript
复制
ws=require('ws');  // fails to find global path

问:我如何确保模块全局也传递给需求模块。有办法把它作为参数传递吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-08-14 13:14:09

我不确定是否有一条“全球”之路。node.js文档建议,相对于所需的文件,会发生默认的require,并在目录链上搜索node_modules目录。来自文档

例如,如果位于‘/home/ry/project/foo.js’的文件被称为require('bar.js'),那么节点将按照以下顺序查找以下位置:

  • /home/ry/projects/node_modules/bar.js
  • /home/ry/node_modules/bar.js
  • /home/node_modules/bar.js
  • /节点_模块/bar.js

看起来,您可以使用NODE_PATH env提供一个查找模块的位置列表:

文件夹

根据这些文件,以下内容可能有效:

NODE_PATH=/path/to/node_modules/where/ws/lives node mymain.js

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32010712

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档