npm常用命令、发布自己的npm、更新和删除npm包

npm   =>     Node  Package   Manager       是nodeJs的包管理工具

npm 官网    http://www.npmjs.org

npm常用命令

npm   -v                          //查看版本号

npm   --help                    //查看npm所有命令

npm   adduser                //添加 npm 账号,也可以去npm官网注册

npm   init                        //构建项目说明,生成 package.json文件

npm   view    jquery   versions               //查看历史版本信息(最多只能显示100条)        

npm   view   node   versions  --json       //查看所有版本信息

npm   view   jquery   version                  //查看最新版本信息

npm   info   jquery                                  //查看所有版本及jquery的信息

npm   ls   jquery                                     //查看本地安裝的jquery版本

npm   ls   jquery   -g                               //查看全局安裝的jquery版本

npm   i   jquery@3.2.3                           //安裝指定版本 

npm   i   jquery                                       //安装推荐的版本

npm   i   jquery@latest                          //安裝指定、最新版本 

npm   install   gulp     简写    npm   i   gulp     //安装依赖

npm   install    gulp   -S  -D     

npm   install    gulp@3.0.0   --save    

npm   update   gulp            //可以把当前目录下node_modules子目录里边的对应模块更新至最新版本      

npm   update   gulp -g        //可以把全局安装的对应命令行程序更新至最新版  

npm   uninstall    gulp@3.0.0   --save           //卸载依赖

npm   install   cnpm   -g  --registry= https://registry.npm.taobao.org      //安装淘宝镜像

npm   config   list                            //查看npm的配置

npm   config  set  registry   https://registry.npm.taobao.org      //设置淘宝镜像源

npm   config  set  registry   https://registry.npmjs.org               //设置npm源

npm   set   disturl    https://npm.taobao.org/dist              //设置资源库从淘宝库获取 

npm   cache   clean   --force         //清空npm本地缓存 ,用于对付使用相同版本号发布新版本代码的人 

npm   run   dev / test / build           //执行script命令

npm   login                   //发布包时登录npm账号用的

npm    publish              //发布包到npm官方库

npm    unpublish    test      //撤销已发布的包 

npm    unpublish     test     --force          //强制撤销

npm    unpublish      test@1.0.2             //可以撤销发布自己发布过的某个版本代码 


发布自己的包到npm官方库

1、首先创建项目  生成package.json

npm  init 

package name: (hktest) //包名,可更改,也可以使用默认(直接回车)

version: (1.0.0) 0.0.1 //版本,可更改,也可以使用默认(直接回车)

description: 演示上传npm包 //项目描述,方便别人了解你的模块作用,搜索的时候也有用

entry point: (index.js) //指定了程序的主入口文件,可更改,也可以使用默认(直接回车)

test command: //测试命令(直接回车)

git repository: //git仓库(直接回车)

keywords: //一个字符串数组,方便别人搜索到本模块,可更改,也可以使用默认(直接回车)

author: hk//作者,可更改,也可以使用默认(直接回车)

license: (ISC) //你可以在https://spdx.org/licenses/这个地址查阅协议列表 ,可更改,也可以使用默认(直接回车) 

2、创建index.js入口文件

var rename = function (name) {

    var str  =  '用户' + name

    return str ;

}

module.exports = {

    rename 

}    

3、新建README.md文件

# hktest

# 快速上手

## 安装

npm   install   hktest

## 全局注册(在main.js文件里注册)

```javascript

import   tool   from   'hktest';

global.tool= hktest;

```

## 局部注册

```javascript

import   tool  from   'hktest';

4、登录发布

登录npm账号:

npm    login

没有账号就去npm官网注册或者命令行注册:

npm    adduser

登录好了就可以执行发布了:    

npm    publish

5、更新包及删除、撤销已发布的npm包

更新直接执行:

npm    publish

每次发布要改变版本号,且版本号要比上一次版本号大

这里简单介绍一下版本号。

语义版本号分为X.Y.Z三位,分别代表主版本号、次版本号和补丁版本号。当代码变更时,版本号按以下原则更新。

如果只是修复bug,需要更新Z位。

如果是新增了功能,但是向下兼容,需要更新Y位。

如果有大变动,向下不兼容,需要更新X位。

删除、撤销已发布的npm包

npm    unpublish    test                          //撤销已发布的包 

npm    unpublish    test     --force          //强制撤销

npm    unpublish    test@1.0.2             //可以撤销发布自己发布过的某个版本的代码 


6、发布遇到的问题及解决方案

1、这一步的常规报错及处理

npmERR!publishFailedPUT403

npmERR!codeE403

npmERR!no_permsPrivatemode enable,only admin can publish this module:

出现原因:使用的是淘宝源cnpm,登陆到的是cnpm

解决方法:切换到npmjs的网址,代码如下

npm  config  set  registry  https://registry.npmjs.org

2、包名重名报错

报错403:You do not have permission to publish "xxx". Are you logged in as the correct user? 

出现原因:所要publish的包的name和npmjs网上已经发布的包的名字重复,所以收你没有权限发布这个名字的包。(简单解释就是你想要的名字被别人抢先注册了)

解决方法:找到package.json文件,把name的值换掉。如果还出现上述错误就是还是重名的,继续换!

3、未激活邮箱报错

报错403:you must verify your email before publishing a new package:

出现原因:没有用邮箱激活登录到注册账号的邮箱  激活一下就好了

7、npm包过滤上传文件 .npmignore

当你上传包到npm库时,有一些本地的依赖文件和测试demo等不想上到npm库里,这时就要用到.npmignore过滤文件了,在根目录下新建文件取名.npmignore,用编辑器打开写入你想过滤文件类型就可以了。

eg:

image.png





关键词:
上一篇 下一篇


读后有收获可以支付宝请作者喝枸杞,有疑问也可以加作者讨论:





友情链接
@寅春树 豫ICP备20020705号 Powered by Thinkcmfx