# 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. 【javascript】内存泄露及其解决办法

    1.内存泄露:一般由于开发者使用不当导致不用的内存没有被操作系统或者空闲内存池回收释放. 2.造成内存泄露的常见原因: 1) 意外的全局变量引起的内存泄露 2)闭包引起的内存泄露 闭包可以维持函数内局 ...

  2. 深入剖析Kubernetes k8s

    深入剖析Kubernetes k8s 毫无疑问,Kubernetes 已经成为容器领域当之无愧的事实标准.除了 Google.Microsoft 等技术巨擘们在容器领域里多年的博弈外,国内的 BAT. ...

  3. 浅析PAC,修改PAC文件及user-rule文件实现自动代理

    浅析PAC,修改PAC文件及user-rule文件实现自动代理 代理自动配置(英语:Proxy auto-config,简称PAC)是一种网页浏览器技术,用于定义浏览器该如何自动选择适当的代理服务器来 ...

  4. websocket 原理

    自己写一个websocket import socket, hashlib, base64 sock = socket.socket() sock.bind(('127.0.0.1', 9000)) ...

  5. Git在Eclipse中的使用

    一.把远程仓库的项目clone到eclipse里面: 最新版的Eclipse上已经集成了Git插件.所以在Eclipse中可以很方便的使用Git的功能. 在使用Git功能之前,需要先进行下简单的设置. ...

  6. IDEA添加作者和时间信息

  7. 深入理解HashMap+ConcurrentHashMap的扩容策略

    前言 理解HashMap和ConcurrentHashMap的重点在于: (1)理解HashMap的数据结构的设计和实现思路 (2)在(1)的基础上,理解ConcurrentHashMap的并发安全的 ...

  8. reids非关系性数据库

     1.Redis环境配置 下载安装地址: https://github.com/MicrosoftArchive/redis/releases 解压文件到指定的目录,D:\ChromeCoreDown ...

  9. 判断闰年C语言版

    #include<stdio.h> int isLeap(int year) { // 必须先判断是平年的情况 后判断闰年的情况 == && year%!=) || yea ...

  10. ltp执行过程总结

    命令行:./runltp -b DEVICE -f timers -p -l result-log-timers.20180824 -o screen-log-timers.20180824 runl ...