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

npm的使用

package.json

  • 快速生成package.json npm init -y

  • “version”: “~1.1.0”
    格式为:「主版本号. 次版本号. 修订号」。
    修改主版本号是做了大的功能性的改动
    修改次版本号是新增了新功能
    修改修订号就是修复了一些bug

  • dependencies

"dependencies": {"react": "17.0.2",// 固定版本"react-dom": "~17.0.2",// 不低于17.0.2版本,但是不改变主版本号和次版本号"react-scripts": "^4.0.3",// 不低于4.0.3版本,但是不改变主版本号"jquery": "latest",// 安装最新版本"@aurora/card": "1.0.3" // @aurora/card是个范围包,aurora是范围名称,aurora范围下的card包
}
  • 第三方相关配置
    1、typings 指定 TypeScript 的入口文件
    2、eslintConfig eslint的配置
    3、babel 指定 Babel 的编译配置
    4、browserslist 用来告知支持哪些浏览器及版本
    5、lint-staged 和 gitHooks 一起配置,每次提交代码只会检查当前改动的文件

npm的安装机制

在这里插入图片描述

  • 缓存位置(windows)
    user\xxx\AppData\Roaming\npm-cache当中的_cacache文件夹
  • 清理缓存(无论在哪里执行命令都会删除_cacache)
    npm cache clean -f
  • package-lock.json(可以保证项目成员依赖尽量一致)
package.json中多数定义的是版本范围	"vue": "~1.0.0",	"jquery": "^5.2.1"
package-lock.json会锁定版本	"vue": "1.0.5",	"jquery": "5.3.18"
npm install(无lock文件) ->	"vue": "1.0.10"		"jquery": "^5.9.2"
npm install(有lock文件) ->	"vue": "1.0.5"		"jquery": "5.3.18"

设置镜像源(.npmrc文件)

  • 默认镜像地址(https://registry.npmjs.org/)淘宝镜像地址(https://registry.npmmirror.com)
  • 项目.npmrc文件(根目录下,优先于用户级文件)
  • 用户.npmrc文件(C:Users\yp.npmrc)npm config set registry https://registry.npmmirror.com
  • 中心仓和范围包
    registry=https://registry.npmmirror.com
    @test:registry=xxx

安装、更新、删除依赖

  • 查看和安装依赖
    查看项目中的依赖 npm list npm list xxx(包含xxx的位置)
    安装项目的全部依赖 npm install
    项目中增加某个依赖包 npm install xxx npm install xxx@版本号
    安装依赖并把依赖项保存到package.json文件中 npm install --save
    全局安装(C:\user\当前用户\AppData\Roaming\npm中) npm install xxx -g
  • 安装依赖不成功或者版本对不上
    1、镜像源设置不对 (跟运行正常的同事对一下.npmrc文件设置,用户级和项目级的)
    2、npm缓存影响 (删除node_module + npm cache clean -f)
    3、lock文件的影响 (更新或者删除lock文件)
    4、ssl验证问题Error: unable to verify the first certificate (npm config set strict-ssl false)
  • 更新和删除项目中的包(node_module上级目录中打开终端)
    npm update xxx
    npm remove xxx (package.json中记录的依赖项也会被删除)
http://www.lryc.cn/news/221825.html

相关文章:

  • Web服务器实战
  • 2021年电工杯数学建模B题光伏建筑一体化板块指数发展趋势分析及预测求解全过程论文及程序
  • pandas教程:Essential Functionality 索引 过滤 映射 排序
  • pyspark连接mysql数据库报错
  • HK WEB3 MONTH Polkadot Hong Kong 火热报名中!
  • “第六十三天”
  • 常用排序算法实现
  • 使用表单登录方法模拟登录通信人家园,要求发送登录请求后打印出来的用户名下的用户组类别
  • Redis 的缓存击穿,穿透,雪崩及其解决方案
  • JWT原理分析——JWT
  • Jprofiler/ VisualVM 定位内存溢出OOM
  • NOIP2023模拟13联测34 competition
  • Intel oneAPI笔记(2)--jupyter官方文档(oneAPI_Intro)学习笔记
  • 用 QT 开发软件会吃官司吗?
  • 远程运维用什么软件?可以保障更安全?
  • 数据结构与算法C语言版学习笔记(2)-线性表、顺序存储结构的线性表
  • 【vite】vite.defineConfig is not a function/npm无法安装第三方包问题
  • 234. 回文链表 --力扣 --JAVA
  • 【JAVA学习笔记】65 - 文件类,IO流--节点流、处理流、对象流、转换流、打印流
  • R语言 复习 习题图片
  • c语言 结构体 简单实例
  • 【ChatGPT】ChatGPT的自定义指令
  • 《哥德尔、艾舍尔、巴赫——集异璧之大成》阅读笔记1
  • 稳定细胞系构建技术介绍
  • k8s部署srs服务
  • 使用Java分割PDF文件
  • LLM时代中的分布式AI
  • Zinx框架-游戏服务器开发003:架构搭建-需求分析及TCP通信方式的实现
  • 如何使用Pyarmor保护你的Python脚本
  • 【c++】搜索二叉树的模拟实现