2014-11-02 63 views
-1

我有一个节点应用程序,它使用某些js库的源作为原始源(将它注入到远程的某个地方)。如何从另一个模块访问已安装模块的资源?

那些手动从node_modules提取并通过fs直接加载到应用程序中的js库。

这些文件如何从节点模块加载而不是直接加载它们?

主要的问题是,这些模块可以全局安装,所以我不能硬编码路径node_modules/required_module/required_file.js。

+0

为什么不打包你想要的源到一个实际的模块,并把实际的模块放在模块的预期位置(本地或全局),然后使用'require()'来加载模块?你为什么试图避免使用模块加载系统?' – jfriend00 2014-11-02 19:38:52

+0

@ jfriend00我需要源javascript,而不是javascript对象。源需要传递给远程js vm。 – setec 2014-11-03 08:16:38

+0

你的问题根本不清楚你想做什么。什么是“传递给远程js。vm。”什么意思?你现在已经过了13个小时而没有有意义的答案,这很可能是因为没人理解你在问什么。 – jfriend00 2014-11-03 08:18:19

回答

0

您可能会测试各种全局路径以查看是否可以找到该文件。通常,全局模块安装在大多数机器的相同位置。但是,这不是一个很好的解决方案。您将遇到使用NVM的用户的问题。

最好的办法就是将文件复制到自己的源代码中。

+0

Thanx的答案,我也发现我可以只复制'require'模块搜索模式。 – setec 2014-11-03 08:18:15