npm环境搭建

npm是什么

npm是前端的包管理工具,类似于后端的maven。现在npm已经集成到nodeJs中,安装好nodeJs就可以安装好npm了。

npm初始配置

一般下载好nodeJs后要对npm进行一些初始化配置。

修改npm的镜像源

npm默认的镜像源是https://registry.npmjs.org/,这个服务器是在国外的,网速一般会比较慢,所以可以修改成我们国内的npm镜像源。

shell 复制代码
# 查看npm当前镜像源
npm config get registry
# 设置npm的镜像源
npm config set registry https://registry.npmjs.org/

# 国内的镜像源
# 腾讯
npm config set registry http://mirrors.cloud.tencent.com/npm/
# 华为
npm config set registry https://mirrors.huaweicloud.com/repository/npm/

修改npm本地仓库的位置

npm在本地有两个仓库,一个是npm-cache,另一个是npm-local

npm-cache 本地缓存

npm-cache是npm的缓存路径,用于存储已经下载的包文件。当您使用npm install安装包时,npm会将下载的包存储在npm-cache中,以便在之后的安装过程中重复使用,避免重复下载。这有助于加快安装速度并减少网络流量。
npm-local 本地全局仓库

npm-local是npm的全局仓库路径,即安装一些通用的工具类,如vue、typescript。用npm install vue -g安装,-g表示global,安装到npm-local中。通常要把该路径加入到环境变量中,这样就可以在命令行直接使用安装好的命令。

shell 复制代码
# npm本地仓库默认在C盘,这很不友好
# 修改npm-local本地路径
npm config set prefix D:\npm_repository\npm-local
npm config get prefix
# 修改npm-cache本地路径
npm config set cache prefix D:\npm_repository\npm-cache
npm config get cache

# 或者通过下面命令查看npm的所有配置
npm config list

npm install、npm install --save与npm install --save-dev区别

npm5.0.0之前,npm install X

npm install:会把X包安装到node_modules目录中;不会修改package.json,所以之后别人拉取最新的代码后运行npm install,不会安装X

npm install --save:会把X包安装到node_modules目录中,并且修改package.json中的dependencies,所以之后别人拉取最新的代码后运行npm install,会安装X

npm install --save-dev:会把X包安装到node_modules目录中,并且修改package.json中的devDependencies,所以之后别人拉取最新的代码后运行npm install,会安装X,但打包的时候不会包含该依赖
npm5.0.0之后(包括npm5.0.0)

npm install和npm install --save是等价的,即默认就是安装依赖并且修改package.json中的dependencies。

shell 复制代码
npm install --save 可以简写为 npm i -S
npm install --save-dev 可以简写为 npm i -D
相关推荐
啊阿狸不会拉杆33 分钟前
《计算机网络-自顶向下方法》6.7 回顾:Web页面请求的历程 读书笔记
前端·计算机网络
云上工程笔记1 小时前
四柱记账法和复式记账法有什么区别?复式记账为什么更适合查错和对账
大数据·前端·人工智能
恋猫de小郭1 小时前
Dart Skills CLI 1.0 :AI 时代的 Dart 交付支持
android·前端·flutter
Hilaku1 小时前
为什么技术极强的前端,往往当不好前端 Team Leader?
前端·javascript·程序员
Knight_AL1 小时前
EasyExcel 导入模板踩坑:row.add(““)导致文本格式失效与单元格保护问题解决方案
java·前端·easyexcel
Csvn1 小时前
模板字面量类型:用类型做字符串的正则
前端
倾颜2 小时前
AI Chat 长会话性能实践:消息虚拟化、动态高度与流式滚动设计
前端·react.js·node.js
幸运小圣2 小时前
SSE 与 WebSocket 新手入门:前端实时通信完全指南【JavaScript】
前端·javascript·websocket
艾伦野鸽ggg2 小时前
25级开学 JS 考核题解
前端·javascript
leoZ2312 小时前
2026-09-08-mysql-57-init-walkthrough
前端·javascript·数据库·vue.js·opencv·mysql·adb