Node.js 节点js的入口脚本中是否包含所有函数?

Node.js 节点js的入口脚本中是否包含所有函数?,node.js,npm,Node.js,Npm,我看到的代码非常简单。它需要一个库并使用以下函数之一: const bitcoin = require('bcashjs-lib'); . . . const hdPath = bitcoin.hdPath(keychain); 以下是一个在其他地方使用的示例: 以下是他们使用的版本: 但是,当我在自己的脚本上执行相同操作时,函数没有定义。果然,库的条目文件中没有它: 任何提示都很好。BitGo模块能够使用hdPath(),因为它们自己定义并将其附加到比特币对象。它不是bcashjs库的

我看到的代码非常简单。它需要一个库并使用以下函数之一:

const bitcoin = require('bcashjs-lib');
.
.
.
const hdPath = bitcoin.hdPath(keychain);
以下是一个在其他地方使用的示例:

以下是他们使用的版本:

但是,当我在自己的脚本上执行相同操作时,函数没有定义。果然,库的条目文件中没有它:


任何提示都很好。

BitGo模块能够使用
hdPath()
,因为它们自己定义并将其附加到比特币对象。它不是bcashjs库的一部分

见:(第129行)


我不知道比特币,但可能只是因为你没有相同版本的“bcashjs lib”太好了,谢谢。您知道该对象是如何传递到另一个文件的吗?这是通过“require”工作方式实现的。当您需要一个模块时,您每次都会得到确切的对象,即使require调用是在不同的文件中进行的。因此,如果您修改一个模块,那么修改将在其他任何地方都可用。如果您不知道自己在做什么,则不建议这样做,因为您可能会与项目中需要相同模块的其他模块产生混乱。它们看起来像是猴子补丁
bcashjs lib
——它们正在向模块导出的对象添加函数。之后,任何导入它的模块都可以访问新功能。太好了。非常感谢各位。
bitcoin.hdPath = function(rootKey) {
   const cache = {};
   //etc...
}