当两个包具有相同的名称时,如何安装正确的 NPM 包?

How do I install correct NPM package when two packages have the same name?

我正在尝试将 Loopback3 连接到 DynamoDB,因此我希望安装一个连接器。这个——https://github.com/codecaptainadmin/loopback-connector-dynamodb/blob/master/README.md -- seemed good because it has instructions, as opposed to this one -- https://github.com/mandarzope/loopback-connector-dynamodb#readme。但他们似乎都有相同的 NPM 名字。也就是说,第一个说到:

$ npm install loopback-connector-dynamodb --save

但这似乎是在安装第二个。来自我的 package.json:

    "loopback-connector-dynamodb": "0.1.0-5",

(0.1.0-5是我不要的版本号)。安装包时如何区分?

(附带说明,如果有人推荐一个而不是另一个,或者完全不同的包或方式将 Loopback3 连接到 DynamoDB,我欢迎推荐)

如果你看这里(https://www.npmjs.com/search?q=loopback-connector-dynamodb ) you will see that loopback-connector-dynamodb package in npm repository references to https://github.com/mandarzope/loopback-connector-dynamodb 存储库。

如果您 运行 npm docs loopback-connector-dynamodb,您将被重定向到 https://github.com/mandarzope/loopback-connector-dynamodb

所以我认为这个包与 mandarzope 的存储库有关。

您在 post 中提出的问题的答案是在包名称前加上相关范围的前缀,例如@letscomunica/loopback-connector-dynamodb 似乎是您通过 mandarzope 安装的路径的另一条路径。您可以通过搜索 the NPM registry. See also the npm docs on scope.

找到范围

但是,您的问题指向 codecaptainadmin 的存储库,该存储库似乎实际上并未在 NPM 上发布 - 如果他们对如何做到这一点感到困惑并且不接受问题,我会三思而后行.

如果您想要一个包含在属于 codecaptainadmin 的 git 集线器存储库中,您可以像这样指定 git 来源的安装:npm install codecaptainadmin/loopback-connector-dynamodb

以上两种格式的使用方法详见npm docs