npm:为什么像 npm urn 这样的拼写错误会起作用?

gli*_*a93 2 node.js npm

我正在将 SPA 部署到生产服务器并意外进入npm urn build了命令 shell。我注意到我的拼写错误,预计 npm 会抛出错误,但它还是构建了该项目。

看起来 npm 开发者为这样的错误做了一些准备。这背后的原因/历史是什么?

sun*_*sen 5

NPM 使用Levenshtein 距离算法来查找相似的命令。请参阅https://github.com/npm/cli/blob/latest/lib/utils/did-you-mean.js

于 2018 年 6 月 28 日实施。请参阅https://github.com/npm/cli/commits/latest/lib/utils/did-you-mean.js

  • 而且,它没有失败,什么也没说就跑了。我见过拼写错误的建议,但这个没有告诉我任何信息。 (2认同)