npm包的命名规范
1. 包名类似,拒绝发布
把包名中的标点符号去掉并与现有的包进⾏⽐较,相同则不允许发布
例如:react-native已经存在,那么诸如
reactnative
react_native
react.native
就不可以再发布了
2. 使⽤作⽤域
如果因为你起的包名与现有的包名太相近⽽被阻⽌发布这个包,那么到⼀个独⼀⽆⼆包名最简单⽅法就是使⽤⾃⼰的作⽤域。你可以使⽤@+你的npm⽤户名加在包名前⾯将包划到你的npm账户作⽤域下。⽐如,我的npm⽤户名是jackie,所以我的作⽤域是@jackie。
所以在package.json⽂件⾥把
{
"name": “react-native"
}
修改成
{
"name": “@jackie/react-native"
}
然后我要发布这个包。被划了作⽤域的包默认是私有的,所以要通过—access=public让它变为公有的包:
>npm publish --access=public
+ @jackie/react-native@1.0.0
3. 包命名的历史
在npm注册表上,包名的历史是⼀个很⼩⼼的地添加条件限制的过程。在最早的时候,npm允许在包名上添加url安全字符,包括⼤写和⼩写字母。但是现在创建的包名中不能再有⼤写字母了,但是在npm注册表中那些包名中有⼤写字母的包依然存在也依然在使⽤,包名仅仅在⼤⼩写上的差异让我们第⼀次遇到了误植事件!
可能⼤多数⼈遇到的例⼦是jsonstream。JSONStream 和 jsonstream 是不同的包但是很难区分,在⼀些⼤⼩写不敏感的系统中安装这些包就可能有问题
4. 好的包名可以帮助到所有⼈
我们希望新的包名规则可以帮助包开发者们挑选出合适的名字,并且能够帮助⽤户去避免意外获取到错误的包。
react native 原作者:Wendy曹
链接:
来源:简书
简书著作权归作者所有。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论