# 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. navicat 连接postgresql报错pg_hba.conf

    PostgreSQ数据库为了安全,它不会监听除本地以外的所有连接请求,当用户通过JDBC访问是,会报一些如下的异常: org.postgresql.util.PSQLException: FATAL: ...

  2. Numpy 基本除法运算和模运算

    基本算术运算符+.-和*隐式关联着通用函数add.subtract和multiply 在数组的除法运算中涉及三个通用函数divide.true_divide和floor_division,以及两个对应 ...

  3. jquery操作节点

    var v= $("input[type='checkbox'][name='ids']:checked").closest('tr').find('td:eq(2)').map( ...

  4. kali linux DIY

    开启你的kali linux DIY之旅 感谢原博主的分享,真的非常非常受用! 更新源 首先 是kali2016.2更新源的问题,网上找了好久,都不是很满意.后来把kali 2016.2安装到实体机中 ...

  5. Java开发万年历

    自己做出来的万年历: 以下代码: public class Test2 { public static void main(String[] args) {  Scanner sc = new Sca ...

  6. Kattis之旅——Factovisors

    The factorial function, n! is defined thus for n a non-negative integer: 0! = 1 n! = n * (n-1)! (n & ...

  7. 启动项详解和更改deepin启动内核的方法

    内容来自网上查找和总结以及自己的尝试 boot里面的启动项是根据其它文件生成的,如果改boot里面,会在你更新grub后再次回到原来的状态.(之后 我(有显卡驱动问题的用户)通过在开机时选择系统页面按 ...

  8. gcahce事物不够,借助binlog追上

    gcahce事物不够,借助binlog追上 宕机节点以单机集群启动,既自己作为一个集群启动,不过UUID要和旧的集群保持一致: 修复grastate.dat 文件的方式这里略,直接通过wsrep_re ...

  9. 同级div设置display:inline-block,父级div强制不换行

    同级div设置display:inline-block,父级div强制不换行 <html> <head></head> <body> <div i ...

  10. Vue中的事件与常见的问题处理

    Vue的事件:获取事件对象$event: 事件冒泡:事件会向上传播 原生js阻止事件冒泡,需要先获取事件对象,再调用stopPropagation()方法: vue事件修饰符stop,例@clik.s ...