npm包下载&安装&其他命令

454 阅读4分钟

成长往往是在坚持不下去的时候坚持了下去

好运.jpg

npm下载使用包

步骤分为三步

  1. 初始化项目。npm init 如果之前已经初始化,则可以省略。
npm init --yes
// --与yes之间没有空格, -- 与init之间有空格
// 或者是 npm init -y
  1. 安装包。 npm install 包名。[注意:保持联网的状态哈]

  2. 引入包,使用

  • 当我们已经下载好一个包之后,就可以像使用核心模块一样去使用它。

  • 格式是:const 常量名 = require('包名') 这个格式与引入核心模块的格式是一样的。

下载包慢的原因 小伙伴们都知道 有的时候用别人的包时需要去下载 在网络不好的时候下载很慢或者下载不成功 令人头疼 这个时候我们就要修改一下下载源就可解决这个问题了

  • 默认情况下,npm 从一个名为 registry.npmjs.org/ 的服务器上下包。这个服务器在国外,因此下包速度会非常慢

解决方法

  1. 首先我们在小黑窗口检查一下下载的镜源输入:npm config get registry 默认是这个地址 这个时候改修地址

image.png

  1. 下包的地址切换为国内的淘宝服务器:npm config set registry=https://registry.npm.taobao.org/

3.解决问题

包的分类--npm包可以分为两大类 1. 一个是全局包 全局包默认安装到系统目录(一般在系统盘的node_modules中)

npm root -g // 查看全局包的安装目录
npm list -g --depth 0 //查看全局安装过的包

2. 一个是本地包

  • 局部安装(或者叫本地安装),包安装在当前项目的根目录下(与package.json同级)的node_modules中。

  • 命令:npm install 包名

  • 本地包也可以分为两类

  1. 开发依赖包
  2. 生产依赖包

image.png

全局包和本地包区别

  • 全局安装的包一般可提供直接执行的命令。我们通过对一些工具类的包采用这种方式安装,如:
    gulp, nodemon, live-server,nrm等。
  • 本地安装的包是与具体的项目有关的, 我们需要在开发过程中使用这些具体的功能。

一个经验法则:

  • 要用到该包的命令执行任务的就需要全局安装
  • 要通过require引入使用的就需要本地安装

npm包创建到发布

  1. 首先在 www.npmjs.com 网站上注册账号
  2. 在本地磁盘上创建一个空项目,取文件夹名为myNpm(根据自己的实际情况去名字)。注意请先去npm网官去确定一下,这个项目名是否已经被占用了。(如果这个名字已经被占用了,则你是无法向npm上上传的
  • 检测包名是否被占用
npm view 包名
# 这个命令用来查看 某个包的信息
# 如果返回404,说明这个项目名在npm官网上找不到,此时你就可以使用。
# 否则,说明不可用。
  • 报错就是没有被占用
  • 没有报错就是被占用了 小伙伴们要区分一下哈
  1. 使用npm init --yes命令来创建一个package.json文件,对你项目myNpm信息进行设置
  2. 切换当前npm网址 这个时候就不可以用淘宝那个网址了
  3. 连接npm 命令 npm adduser 这个命令需要输入四个信息连接npmjs
  • 用户名
  • 密码
  • 邮箱(是你在npmjs官网上注册时使用的信息)
  • 校验密码。它会向你的邮箱发邮件
  • 小伙伴们在不确定连接上是可以使用 npm who am i命令检测自己
  1. 上传包 命令 npm publish 如果成功:
npm notice
npm notice package: tool61@1.0.0
npm notice === Tarball Contents ===
npm notice 1.3kB index.js
npm notice 220B  package.json
npm notice === Tarball Details ===
npm notice name:          tool61
npm notice version:       1.0.0
npm notice package size:  855 B
npm notice unpacked size: 1.5 kB
npm notice shasum:        3bfba7bc92e242810a850ac39ded7ebe992a6d9c
npm notice integrity:     sha512-VoRuxxbcGzXen[...]v3tKWYUT1B1AQ==
npm notice total files:   2
npm notice
+ tool61@1.0.0

删除包

npm unpublish --force //强制删除

更新包

  1. 修改代码,保存。
  2. 更新版本号。可直接在package.json中修改:只能改大,不能改小。
  3. 重新publish