认识npm-软件包管理器

目录

[1. 认识npm-软件包管理器](#1. 认识npm-软件包管理器)

[1.1. 什么是npm-软件包管理器?(定义)](#1.1. 什么是npm-软件包管理器?(定义))

[1.2. npm 软件包管理器作用?](#1.2. npm 软件包管理器作用?)

[1.3. 下载的包会存放在哪里?](#1.3. 下载的包会存放在哪里?)

[1.4. 如何使用?](#1.4. 如何使用?)

[1.4.1. 初始化清单文件](#1.4.1. 初始化清单文件)

[1.4.2. 下载软件包](#1.4.2. 下载软件包)

[1.4.3. 使用软件包](#1.4.3. 使用软件包)

[1.5. 练习(需求)](#1.5. 练习(需求))

[2. npm - 安装所有依赖](#2. npm - 安装所有依赖)

[2.1. 引入问题](#2.1. 引入问题)

[2.2. 问题原因](#2.2. 问题原因)

[2.3. 为什么不直接把软件包传给别人,而通过npm安装所有依赖的方式](#2.3. 为什么不直接把软件包传给别人,而通过npm安装所有依赖的方式)

[2.4. 解决 - 项目终端输入命令:npm i](#2.4. 解决 - 项目终端输入命令:npm i)

[3. npm - 全局软件包 nodemon](#3. npm - 全局软件包 nodemon)

[3.1. 软件包区别](#3.1. 软件包区别)

[3.2. nodemon 作用](#3.2. nodemon 作用)

[3.3. 如何使用](#3.3. 如何使用)


1. 认识npm-软件包管理器

1.1. 什么是npm-软件包管理器?(定义)

1.2. npm 软件包管理器作用?

  • 下载软件包以及管理版本

1.3. 下载的包会存放在哪里?

  • 当前项目下的 node_modules 中,并记录在 package.json 中

1.4. 如何使用?

1.4.1. 初始化清单文件
  • npm init -y(得到 package.json 文件,有则略过此命令)
1.4.2. 下载软件包
  • npm i 软件包名称
1.4.3. 使用软件包

1.5. 练习(需求)

  • 需求:使用 dayjs 软件包,来格式化日期时间
  • 图解
javascript 复制代码
/**
 * 目标:使用 npm 下载 dayjs 软件包来格式化日期时间
 *  1. (可选)初始化项目清单文件,命令:npm init -y
 *  2. 下载软件包到当前项目,命令:npm i 软件包名称
 *  3. 使用软件包
 */
// 3. 使用软件包
const dayjs = require('dayjs')
const nowDateStr = dayjs().format('YYYY-MM-DD')
console.log(nowDateStr)

2. npm - 安装所有依赖

2.1. 引入问题

  • 项目中不包含 node_modules,能否正常运行?

2.2. 问题原因

  • 不能,缺少依赖的本地软件包

2.3. 为什么不直接把软件包传给别人,而通过npm安装所有依赖的方式

  • 因为自己用 npm 下载依赖比磁盘传递拷贝要快得多

2.4. 解决 - 项目终端输入命令:npm i

  • 下载 package.json 中记录的所有软件包

3. npm - 全局软件包 nodemon

3.1. 软件包区别

  • 本地软件包:当前项目内使用,封装属性和方法,存在于 node_modules
  • 全局软件包:本机所有项目使用,封装命令和工具,存在于系统设置的位置

3.2. nodemon 作用

  • 替代 node 命令,检测代码更改,自动重启程序

3.3. 如何使用

  • 安装:npm i nodemon -g(-g 代表安装到全局环境中)
  • 运行:nodemon 待执行的目标 js 文件
相关推荐
明月清风徐徐8 分钟前
Vue实训---2-路由搭建
前端·javascript·vue.js
王解16 分钟前
速度革命:esbuild如何改变前端构建游戏 (1)
前端·vite·esbuild
葡萄城技术团队24 分钟前
使用 前端技术 创建 QR 码生成器 API1
前端
DN金猿26 分钟前
Vue移动端网页(H5)预览pdf文件(pdfh5和vue-pdf)(很详细)
前端·vue.js·pdf
鸽鸽程序猿34 分钟前
【前端】javaScript
开发语言·前端·javascript
秦时明月之君临天下42 分钟前
React和Next.js的相关内容
前端·javascript·react.js
上官花雨1 小时前
什么是axios?怎么使用axios封装Ajax?
前端·ajax·okhttp
米奇妙妙wuu1 小时前
React中 setState 是同步的还是异步的?调和阶段 setState 干了什么?
前端·javascript·react.js
李刚大人1 小时前
react-amap海量点优化
前端·react.js·前端框架
闹闹没有闹2 小时前
socket连接封装
前端