npm 包为什么以 @ 符号为前缀

本文介绍了npm包中@符号的含义,它表示范围包,允许在特定范围内避免命名冲突。@前缀用于区分不同组织或个人发布的同名包,遵循`@组织名/包名`的命名规范。范围包提供了命名空间,确保每个用户或组织可以在自己的范围内自由发布包,而不影响全局。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第28天,点击查看活动详情

图片来源于网络,侵权必删

前言

本文主要记录了日常学习中的一个小疑问:npm 包为什么以 @ 符号为前缀。

image.png

@前缀是什么意思?

@前缀表示该软件包是范围包,类似于相对路径那样。

image.png

@前缀表示这个包是一个相对空间下的一个软件包。

例如:如果现在有一个包叫myPlugs,而你恰好也想上传一个包。如果是范围包那么你也可以发布同名的包myPlugs。但如果是无范围的包,已经存在一个myPlugs的包,那么你发布的包名就不能叫myPlugs了。

范围

当然这个相对的范围是我们在注册npm帐户时,系统自动分配给我们的。我们可以在这个匹配的范围内,发布我们自己的包。

且在这个范围内创建发布的包不会与其他用户或组织创建的包同名的包,而不会发生冲突。

当在package.json文件中作为从属项列出时,带作用域的程序包之前带有其作用域名称。范围名称是介于@和斜线之间的所有内容。

例如下图:

图片来源于网络,侵权必删.png

命名格式

范围包的命名格式,遵从这个规范:

@myorg/mypackage 即: @组织名/包名

这种包被称为 Scoped Package。

ps: Scope 的定义非常宽泛,可以使一名普通的开发者,或者一个组织都可以定义为 Scope。

本文到此结束

如果大家还有什么其他想法,欢迎在评论区交流!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱划水de鲸鱼哥~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值