# 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. 【转】SQLyog SSH 密钥登陆认证提示: No supported authentication methods available 解决方法

    问题背景: 问题原因: SQLyog不支持非标准的的私钥格式 解决方案: 使用puttyGen重新导入原来的私钥,然后重新保存成PPK证书文件,最后用SQLyog加载该PPK文件即可. 效果截图: 原 ...

  2. AtCoder Beginner Contest 082 B - Two Anagrams

    题目链接:https://abc082.contest.atcoder.jp/tasks/abc082_b Time limit : 2sec / Memory limit : 256MB Score ...

  3. JustOj 1929: 多输入输出练习1

    题目描述 给定很多行数据,要求输出每一行的最大值. 输入 程序有多行输入,每一行以0结束. 输出 有多行输出,对应输入的行数. 样例输入 23 -456 33 78 0 43 23 987 66 -1 ...

  4. Python爬虫_Selenium与PhantomJS

    Selenium是一个Web的自动化测试工具,最初是为网站自动化测试而开发的,最初是为网站自动化测试而开发的,类型像我们玩游戏用的按键精灵,可以按指定的命令自动化操作,不同是Selenium可以直接运 ...

  5. Web开发笔记 #07# Swagger Editor

    Swagger Editor是一款可以用yaml格式进行RESTful API设计.可视化.测试的工具,并且能够实时看到自动生成的文档.效果大概是这样的↓ 根据官方网站介绍,如果是团队的话,建议用在线 ...

  6. Zookeeper注册中心概述

    Zookeeper介绍(配合Dubbox使用) 官方推荐使用zookeeoer注册中心,注册中心负责服务地址的注册和查找,相当于目录服务,提供提供者和消费者只在启动时与注册中心交互,注册中心不转发请求 ...

  7. 利用crontab定时备份nginx访问日志(也可以说是定时切分日志)

    在我们的工作中,肯定会涉及到分析访问日志. 但是如果访问日志都集中存在于一个文件中,那数据量就太大了,并且也不利于我们进行分析. 所以我们需要对访问日志进行按时间切割. 思路: 我们可以利用linux ...

  8. mycat基本概念及配置文件详解

    在介绍mycat之前,首先来了解一下数据库切分. 对于海量数据处理,按照使用场景,主要分为两类:联机事务处理(OLTP)和联机分析处理(OLAP). 联机事务处理也称为面向交易的处理系统,其基本特征是 ...

  9. JDK源码之Lock接口

    public interface Lock { //阻塞的获取锁,如果获取到锁,从该方法返回 void lock(); //可中断的获取锁,该方法会响应中断,在锁的获取中可以中断当前线程 void l ...

  10. Python3 join函数和os.path.join用法

    Python3  join函数和os.path.join用法 os.path.join()连接两个文件名地址的时候,就比os.path.join("D:\","test. ...