npm 淘宝镜像(npm淘宝镜像)
一、npm 和 yarn 的区别
虽然网上和知乎上有好多文章写 npm和 yarn的区别。并且我写的文章中借鉴他人的,但还是希望发出来,自己想看的时候,就立马可以找到。引用的文章也会在底部写出来了。
yarn是由 Facebook、Google、Exponent和 Tilde联合推出了一个新的 JS包管理工具,yarn是为了弥补 npm的一些缺陷而出现的。
1.速度快:(主要来自一下两个方面)
2.安装版本统一
4.多注册来源处理
5.语义化进行了修改
1.查看版本
2.安装淘宝镜像
3.初始化某个项目
4.默认安装项目依赖
5.安装依赖,并且默认保存到 package
6.卸载依赖
7.更新依赖
8.安装全局项目依赖
9.安装特定版本号的项目依赖
10.发布/登录/登出,一系列NPM Registry操作
11.运行命令
二、使用npm 发布自己写的第三方包-npm publish
官网地址:
发布包的3个步骤:npm add user, npm login, npm publish
运行命令:npm login
会提示你输入你注册npm时候的用户名、密码、邮箱
看到下面的截图说明你已经登录成功
运行命令:npm publish
看到下面的截图说明你已经发布成功
这是因为镜像设置成淘宝镜像了,设置回来即可:
npm config set registry
如果有需要改回淘宝镜像,再次修改为npm的淘宝链接:
npm config set registry
一般是没有登录,重新登录一下 npm login即可
包名被占用,改个包名即可。最好在官网查一下是否有包名被占用,之后再重命名
邮箱未验证,去官网验证一下邮箱
原因:要发布的版本和原来的版本号相同
修改:要修改当前版本号
处理:npm install-g npm update
处理:npm publish--access=public
处理:将文件夹名或'name'改成不一致即可
三、npm 发布组件常见错误
npm发布组件时遇到的一些常见报错,这里记录一下,方便查找解决方法:
错误分析:
EISDIR代表“错误,是目录“这意味着npm试图对文件做一些事情,但它是目录。在你的例子中,国家预防机制试图“读“一个文件,它是一个目录(第4行)。由于操作无法完成,因此将引发错误。
这里有三件事要确定:
解决方法:
我这里检查发现.gitignore文件是文件夹的形式,应该是文件的形式存在,改成文件就可以了。
19 verbose stack Error: 401 Unauthorized- PUT You must be logged in to publish packages.
解决方法:
查看npm的登录状态:npm whoami,登录失效时,重新登录:npm login
解决方法:
组件版本已存在,更新版本,重新npm publish
19 verbose stack Error: 403 Forbidden- PUT no_perms
错误分析:
当前的registry是taobao镜像,需要改为npmjs
解决方法:需要切回到npmjs源,输入以下命令:
错误分析:
如果你想发布组件react-native-app-info,而react-native-app-info恰恰已经被别人发不过,这里会提示你发布失败,检测账户是否登录或账户是否匹配
解决方法:这是一个杯具,所以我们在开发组件前,最好去确认名字是否已经被占用`
错误分析:
发布新版本后,去npm包管理网站查看,确实已经成功,但是本地install就是无法获取最新版本,经分析由于我install时用的是淘宝源,也就是 (去package-lock.json文件中查看可知)。原因就在这里:对应的新版本在淘宝镜像里面找不到,也就是淘宝镜像没有同步成功,目前还不知道出现问题的原因。
解决方法:
安装此依赖时,临时切换为npm官方源吧( ),重新install即可