# npm 介绍
> 概念 : node 包管理工具
> 作用 : 通过 npm 来快速下载/安装项目中依赖的包
> 查看 版本号 : npm -v
 
 

# npm 基本使用演示
## 初始化包的配置文件 (package.json)
> npm init   (不推荐)
```js
"name": "npm-demo", # .不要有大写 -不要写汉字 -不要有空格 `xxx aaa-xxx` jquery art-template
"version": "2.2.0", # "2.2.0" ==> x.y.z z-bug修改 y-添加了一个功能 x-添加一个功能(有兼容问题)
"description": "",
"main": "index.js", # 加载模块的时候用到
"scripts": { # webpack
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "是彭煜啦",
"license": "ISC"
```
> npm init -y   (推荐) 一键生成  // -y(yes)   
- 一个配置文件必须要有的 name version
- 一个项目里一定要有 package.json
 
 

## 安装包
> npm install 包名 // jQuery
> npm install 包名@版本号 3.0.1
> 缩写 :
> npm i 包名
> 注意点 : npm i 包名 ( -S --save )
 
 

## 卸载包
> npm uninstall 包名
> 缩写
> npm un 包名
 
 
## dependencies
> 说明 : `npm i` 可以根据 `dependencies` 里面的记录重新安装包
> 以后我们会发现网络上的一些源码/我们的项目 下载下来之后,都是没有 node_modules , 但是有 package.json => dependencies => 包的记录
> 执行命令 : npm i => dependencies 记录的包名 重新安装
## 配置文件和 npm i 的配合 使用
> 没有 package.json ,也能安装包
>
> 1. `项目里一定要有package.json` (npm init -y)
> 2. `自己的demo`和`案例` 里面 可以`不要`package.json
 
 

## 本地安装和全局安装
1. 全局安装 : 如果想把一个`包`当成一个`全局工具`来使用,全局安装
格式 : `npm i 包名 -g`
比如 : npm i mime -g , npm i http-server -g (http-server 创建一个本地服务器环境托管文件)
位置 : `C:\Users\ma250\AppData\Roaming\npm`
特点 : (可以任意地方安装 , 在任意地方使用 工具使用)
2. 本地安装 : 如果安装的包,只想在当前项目中使用, 本地安装
格式 : `npm i 包名`
位置 : 本地安装的包都装在了项目中 的 node_moduels
特点 : (在当前项目中安装,在当前项目中使用) 本地的包需要引入才可以使用
 
 

## 清除缓存
> 现象 : 如果因为网络不好,或者其他原因安装一般就失败了, 缓存里留有记录,
> 清除缓存
> 方式 1 : `C:\Users\ma250\AppData\Roaming\npm-cache` => `_cacache`
> 方式 2 : 执行命令 : `npm cache clean -f`       //==> force
 
 

## nrm
> 概念 : npm 仓库地址管理工具
> 作用 : 加速下载包
>
> 1. 全局安装 : `npm i nrm -g`
> 2. 使用 :
- 展示仓库地址 : `nrm ls`
- 切换仓库地址 : `nrm use taobao` (淘宝镜像)
 
 

## nodemon
> 以前 => `node main.js`
> 现在 => `nodemon main.js`
> 作用 : 监听 js 文件的修改,自动重启 node 程序
> 使用 :
1. 全局安装 : `npm i nodemon -g`
2. 使用 : `nodemon main.js`
 

npm介绍和使用的更多相关文章

  1. npm介绍与cnpm介绍

    npm介绍 说明:npm(node package manager)是nodejs的包管理器,用于node插件管理(包括安装.卸载.管理依赖等) 使用npm安装插件:命令提示符执行npm instal ...

  2. Node.js NPM 介绍

    章节 Node.js NPM 介绍 Node.js NPM 作用 Node.js NPM 包(Package) Node.js NPM 管理包 Node.js NPM Package.json NPM ...

  3. npm 介绍

    安装NPM NPM的全称是Node Package Manager,如果你熟悉ruby的gem,Python的PyPL.setuptools,PHP的pear,那么你就知道NPM的作用是什么了.没 错 ...

  4. NPM介绍

    惠善一的博客:https://huishanyi.club NPM(Node Package Manger),Node包管理工具.在安装完Node之后,NPM便已经同时安装完成,用户可以通过NPM将自 ...

  5. Node.js之NPM工具使用

    1.NPM介绍:包管理工具 (1)允许用户从NPM服务器下载别人编写的第三方包到本地石使用 (2)允许用户从NPM服务器下载并安装别人编写的命令行程序到本地使用 (3)允许用户将自己编写的包或命令行程 ...

  6. npm详解

    一.npm介绍及安装 对于npm,大家多多少少都用过,作为一门技术,我想写篇博客记录一下,一起分享,一起学习. npm,是Node Package Manager的缩写,node的模块管理器,它是随同 ...

  7. element-ui和npm、webpack、vue-cli搭建Vue项目

    一.element-ui的简单使用 1.安装 1. npm 安装 推荐使用 npm 的方式安装,它能更好地和 webpack 打包工具配合使用. npm i element-ui -S 2. CDN ...

  8. Vue-cli 搭建web服务介绍

    Node.js 之 npm 包管理 - Node.js 官网地址:点我前往官网 - Node.js 中文镜像官网: 点我前往```` Node.js 是一个基于 Chrome V8 引擎的 JavaS ...

  9. cnpm与npm的区别

    原文地址:https://blog.csdn.net/chi1130/article/details/72773278 npm介绍 说明:npm(node package manager)是nodej ...

随机推荐

  1. C# 数值类型和无穷大

    在c#语言中的数字有两个特性要了解.例如:任何数除以0所得的结果是无穷大,不在int long 和decimal类型的范围内.所以计算(一个数除以0会出错),但是在double和float类型中有一个 ...

  2. 微信小程序制作家庭记账本之六

    第六天,自己根据样本代码做的记账本可实现添加账目,删除账目和消费总和,实机可以测试,但是没有域名,别人无法访问.

  3. JetBrains WebStorm打开多个项目project的方法

    JetBrains WebStorm打开多个项目project的方法File-->Settings-->Directories点击右侧 + Add content root,选择目录后即可 ...

  4. 2017年3月29日 webService入门理解 二

    前边说到了N多webService的概念. 其实,说白了,我个人理解的话,webService就是一个“概念”.就好像互联网一样,就是一个很虚幻,很高的一个概念.同样,webService也是.互联网 ...

  5. httpclient get post

    https://www.cnblogs.com/wutongin/p/7778996.html post请求方法和get请求方法 package com.xkeshi.paymentweb.contr ...

  6. tft屏图像文字一起显示

    2010-05-04 21:06:00 M16内部flash只有16k,要做数码相框,只能用usart通信了.明天继续研究.

  7. C#中对Web.Config、App.Config字符串加密与解密的方法

    我们平常的项目里面的配置文件通常都是明文形式的存在,现在就是为了项目安全性增强,同时又显得高逼格点, 我们可以采用加密的方式,而我们C#很强大,因为他内置的一些指令方式,很方便而且使用起来还不用解密, ...

  8. Hadoop学习笔记之六:HDFS功能逻辑(2)

    Lease(租约) HDFS(及大多数分布式文件系统)不支持文件并发写,Lease是HDFS用于保证唯一写的手段. Lease可以看做是一把带时间限制的写锁,仅持有写锁的客户端可以写文件. 租约的有效 ...

  9. sitemap index

    https://docs.djangoproject.com/en/2.1/ref/contrib/sitemaps/ very good

  10. 把你的Centos设置成代理ip服务器

    前言:最近在公司做爬虫相关的工作,做过数据抓取的都知道,写程序抓取数据的过程并不像平常我们用浏览器打开网页那么简单!大多数的网站为了自己站点的性能和数据安全都设置了各种反爬策略.最常见的就是添加验证码 ...