我最近遇到了一个广泛使用cnpm进行包管理的项目。我看到类似于var a=require(@renil/a)的内容;
当需要一个模块时,我从来没有在node中见过这样的东西(@)。有人能帮我吗?
发布于 2017-03-10 20:55:12
这实际上是两件不相关的事情。直到我看到你的问题,我才听说过。谷歌搜索后,它似乎是一个中国维护的节点模块注册表。不知道还有什么不同,但我可能会远离它,除非你知道你需要它。
包名中的@符号与相关模块的作用域有关。这在npm文档中有很好的介绍:https://docs.npmjs.com/misc/scope
发布于 2017-03-10 20:52:45
所有npm包都有一个名称。一些包名也有一个作用域。作用域遵循包名称的通常规则(url安全字符,没有前导点或下划线)。在包名中使用时,前面加一个@-符号,后面加一个斜杠,例如
@somescope/somepackagename
作用域是将相关包分组在一起的一种方式,它还会影响npm处理包的方式。
https://stackoverflow.com/questions/42718730
复制相似问题