当前位置: 首页 > news >正文

NPM包管理器

文章目录

  • 一、NPM包管理器
    • 1、简介
    • 2、安装NPM
    • 3、使用npm管理项目
      • 3.1项目初始化
      • 3.2修改npm镜像
      • 3.3 npm install命令的使用
      • 3.4其它命令

一、NPM包管理器

1、简介

什么是NPM
NPM全称Node Package Manager,是Node.js包管理工具,是全球最大的模块生态系统,里面所有的模块都是开源免费的;也是Node.js的包管理工具,相当于前端的Maven 。

2、安装NPM

NPM不需要单独安装,安装完成node.js之后会自动安装上NPM
安装node.js详解:链接: https://blog.csdn.net/qq_43102730/article/details/127258790?spm=1001.2014.3001.5501

查看是否安装成功

#在命令提示符输入 npm -v 可查看当前npm版本
npm -v

在这里插入图片描述

3、使用npm管理项目

创建npm_pro文件夹

3.1项目初始化

#建立一个空文件夹,在命令提示符进入该文件夹  执行命令初始化
npm init
#按照提示输入相关信息,如果是用默认值则直接回车即可。
#name: 项目名称
#version: 项目版本号
#description: 项目描述
#keywords: {Array}关键词,便于用户搜索到我们的项目
#最后会生成package.json文件,这个是包的配置文件,相当于maven的pom.xml
#我们之后也可以根据需要进行修改。
#如果想直接生成 package.json 文件,那么可以使用命令
npm init -y

3.2修改npm镜像

NPM官方的管理的包都是从 http://npmjs.com下载的,但是这个网站在国内速度很慢。
这里推荐使用淘宝 NPM 镜像 http://npm.taobao.org/ ,淘宝 NPM 镜像是一个完整 npmjs.com 镜像,同步频率目前为 10分钟一次,以保证尽量与官方服务同步。
设置镜像地址:

#经过下面的配置,以后所有的 npm install 都会经过淘宝的镜像地址下载
npm config set registry https://registry.npm.taobao.org 
#查看npm配置信息
npm config list

3.3 npm install命令的使用

基本命令

#使用 npm install 安装依赖包的最新版,
#模块安装的位置:项目目录\node_modules
#同时package.json 文件中,依赖包会被添加到dependencies节点下,类似maven中的 <dependencies>
#默认参数:--save  简写  -S  将当前依赖保存在dependencies节点下
npm install jquery

下载特定版本的依赖

#如果安装时想指定特定的版本
npm install jquery@2.1.x

下载开发依赖

#devDependencies节点:开发时的依赖包,项目打包到生产环境的时候不包含的依赖
#使用 -D参数将依赖添加到devDependencies节点
npm install --save-dev eslint
#或简写
npm i -D eslint

下载全局依赖

#全局安装
#Node.js全局安装的npm包和工具的位置:用户目录\AppData\Roaming\npm\node_modules
#一些命令行工具常使用全局安装的方式
npm install --global webpack
#或简写
npm install -g webpack

根据依赖下载安装包

#npm管理的项目在备份和传输的时候一般不携带node_modules文件夹
#安装会自动在项目目录下添加 package-lock.json文件,这个文件帮助锁定安装包的版本
npm install #根据package.json中的配置下载依赖,初始化项目

3.4其它命令

#更新包(更新到最新版本)
npm update 包名
#全局更新
npm update -g 包名
#卸载包
npm uninstall 包名
#全局卸载
npm uninstall -g 包名
http://www.lryc.cn/news/32164.html

相关文章:

  • IT英语记录
  • SRS4.0 源码分析- RTC模块相关类
  • 数位DP
  • 剑指offer(一)-链表
  • CDH大数据平台入门篇之搭建与部署
  • Spark Join
  • 数字的转化规则?
  • MySQL面试题-锁相关
  • Windows 终端编译 C代码
  • SpringCloud:Feign的使用及配置
  • Parquet学习与使用之BloomFilter的应用
  • 95%置信区间计算-理解
  • 深度学习pytorch实战三:VGG16图像分类篇自建数据集图像分类三类
  • 2023年3月软考高项(信息系统项目管理师)报名走起!!!
  • 模电学习11 运算放大器学习入门
  • spring学习3.5
  • 名创优品:国内“触礁”,海外“提速”
  • Java学习笔记 --- Tomcat
  • 面向对象设计模式:行为型模式之状态模式
  • 【Python入门第二十五天】Python 作用域
  • 运行时数据区及程序计数器
  • 手写操作系统+文件系统开源啦
  • 小众但意外觉得蛮好用的剪辑软件!纯良心分享
  • 一文带你入门angular(下)
  • 2023-3-6刷题情况
  • 一篇教你解决如何在不加锁的情况下解决多线程问题!
  • OPT(奥普特)一键测量传感器SmartFlash高精度的四重保证
  • 网络协议丨从物理层到MAC层
  • 【Maven】(五)Maven模块的继承与聚合 多模块项目组织构建
  • Linux 常用软件安装(jdk,redis,mysql,minio,kkFileView)