新发布至NPM组织的包可下载但官网不显示,求解决方案
我之前也遇到过完全一样的问题,折腾了好一会儿才搞定,给你几个靠谱的解决方向:
检查包的元数据是否完整
先通过命令行确认包的内容是否真的上传成功了:运行npm view <你的包全名>,看看输出里有没有readme字段,以及版本、作者这些信息是否正确。如果这里能看到完整的README,说明发布流程没问题,只是官网的索引同步慢了;如果看不到,那大概率是你发布时没把README包含进去——检查下package.json里的files字段,是不是不小心把README.md排除了,或者有没有遗漏其他必要文件。强制重新发布触发同步
有时候npm官网的缓存或者索引更新会有延迟,哪怕过了很久也没同步。你可以尝试强制重新发布同一个版本(确保包内容没有改动):运行npm publish --force。这个操作会重新向npm服务器推送包的元数据,大概率能触发官网的同步更新。排查权限和公开状态
确认你的包是公开状态的——如果是私有包,只有组织内部成员能看到,外部是搜不到的。可以用npm access public <你的包全名>把包设为公开(需要你有组织的管理员权限)。另外,用npm owner ls <你的包全名>检查包的所有者是否包含你的组织账号,避免权限配置错误导致不展示。清除浏览器缓存或换无痕模式
有时候不是npm官网没同步,而是你本地浏览器的缓存在搞鬼。试试用无痕模式打开npm官网,或者清除浏览器的缓存后刷新页面,看看包会不会显示出来。联系npm官方支持
如果以上方法都试过还是不行,那可能是npm官网的索引服务出现了异常。你可以提交一个支持工单,提供你的组织名称、包名、发布时间这些信息,官方团队会帮你排查同步问题。
内容的提问来源于stack exchange,提问作者Michael Koelewijn

