当前位置:网站首页>包管理工具npm- node package management相关知识 、检查包更新、NPM包上传、更换镜像、npm ERR! registry error parsing json
包管理工具npm- node package management相关知识 、检查包更新、NPM包上传、更换镜像、npm ERR! registry error parsing json
2022-08-02 20:32:00 【CDamogu】
node package management


NPM相关知识
简介
NPM是nodejs内置的软件包管理器—用来管理软件包的- 简书推荐
NPM由三大独立部分组成:
- 网站:开发者查找包(package)、设置参数以及管理 npm 使用体验的主要途径,网址为:https://www.npmjs.com/
- 注册表:是一个巨大的数据库,保存了每个包的基本信息。
- 命令行工具:开发者与npm包打交道的工具。
常用指令
- 查看版本:
node -vnpm -v - 查看设置帮助:
npm help config - 设置代理:
npm config set proxy 192.168.80.202:808npm config set https-proxy 192.168.80.202:808
- 代理用户名和密码
npm config set proxy http://username:[email protected]:portnpm confit set https-proxy http://username:[email protected]:port
- 取消代理:
npm config delete proxynpm config delete https-proxy
- 查看安装信息及下载路径:
npm config ls - 更改npm默认的缓存路径:
npm config set cache "D:/TempDate/nodedata/cache" - 更改npm默认的下载路径
npm config set prefix "D:/TempDate/nodedata/download" - 设置注册表:
- 原始配置:
npm config set registry http://registry.npmjs.org - 淘宝镜像:
npm config set registry http://registry.npm.taobao.org
- 原始配置:
- 安装包:
npm install - 退出状态:
Ctrl+C 输入Y
NPM检查包更新
npm-check是用来检查npm依赖包是否有更新,错误以及不在使用的,我们也可以使用npm-check进行包的更新
检查包更新
安装npm-check:
npm install -g npm-check
检查npm包的状态:
npm-check -u -g
包更新
- 更新全局包
npm update <name> -g
- 更新生产环境依赖包
npm update <name> --save
- 更新开发环境依赖包
npm update <name> --save-dev
NPM包上传
原文章:把自己的项目打包上传到npm
魔改别人的包:修改巨人的npm包 & 如何用npm上传、更新自己的包
账号注册
账号注册请移步:打开链接
初始化包
使用npm init初始化一个package.json文件
npm init
初始化完package.json如下:
{
"name": "bigmushroom_first_test",
"version": "1.0.0",
"description": "My first package to test upload npm package",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "liuwanqiang",
"license": "ISC"
}
登录npm
在本地使用命令行连接npm 使用下面的命令,然后按照提示走,密码默认是不会显示出来的
npm login
- 输入用户名
- 输入密码
- 输入邮箱
更换镜像
因为大部分的人npm使用的是淘宝镜像,上传会失败,所以需要替换为原来的镜像 https://registry.npmjs.org/
npm config set registry https://registry.npmjs.org/
再查看是否设置成功
npm config get registry
拓展知识点:
// 查看当前配置
npm config list
// 安装镜像
npm config set registry https://registry.npm.taobao.org/
npm config set disturl https://npm.taobao.org/dist
// 删除镜像
npm config delete registry
npm config delete disturl
重新登陆
更改了镜像需要按照前面说过的步骤,重新在本地登陆你的npm账户
npm login
发布包
npm publish
注意事项
你必须使用exports暴露你的方法,如下定义了一个npmTest的方法然后暴露出来,才能在安装这个包之后使用require引入
exports.npmTest = (name) => {
console.log(name)
}
FAQ:
Q1: npm ERR! registry error parsing json
如果上传过程中发现,npm ERR! registry error parsing json 报错
解决报错方法,删除registry,继续安装模块就可以了
npm config delete registry
撤销上传
npm unpublish --force
Q2:更新上传后的npm包
- 第一种是你可以手动去package.json里面修改版本号,修改后的版本号必须比之前的大,然后使用npm publish上传
- 第二种是使用npm 命令行工具更新版本号,再使用npm publish 上传,
- 版本号由三位组成 a.b.c,切换到package.json所在目录
- 更新c处:npm version patch
- 更新b处: npm version minor
- 跟新a处: npm version major
每使用一次上面的命令,就在版本号对应的地方加一
边栏推荐
猜你喜欢

callback prototype __proto__

信息学奥赛一本通(1259:【例9.3】求最长不下降序列)

Use the TCP protocol, we won't lost package?

Tencent YunMeng every jie: I experienced by cloud native authors efficiency best practices case

一款免费的容器安全 SaaS 平台使用记录

.NET performance optimization - you should set initial size for collection types

二叉搜索树的实现

Day12 接口和协议

汇编语言中b和bl关键字的区别

TodoList案例
随机推荐
信息系统项目管理师必背核心考点(五十八)变更管理的主要角色
广东省数字经济发展指引 1.0之建成数据安全保障体系
模板的进阶
用了TCP协议,就一定不会丢包吗?
Flutter 常见异常分析
ImageNet下载及处理
C# Monitor类
信息学奥赛一本通(1257:Knight Moves)
C# Monitor class
新增指令 v-memo
.NET如何快速比较两个byte数组是否相等
解道8-编程技术5
有效解决MySQL报错:ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: NO/YES)
软件测试的流程规范有哪些?具体要怎么做?
KDD 2022 | 深度图神经网络中的特征过相关:一个新视角
Day35 LeetCode
vscode如何能将输出从OUTPUT改为TERMINAL或者DebugConsole
Informatics orsay a tong (1258: 【 9.2 】 digital pyramid)
Li Mu hands-on deep learning V2-BERT pre-training and code implementation
SQL基础练习题(mysql)