npm使用指南

引言

首先浅浅了解一下Node.js,这种语言为前端人员开发出一个单体服务提供了非常好的运行环境。而且Node.js基于Chrome浏览器V8引擎实现的运行环境,也可以让我们的javascript代码在Node.js环境里运行。

npm 基础使用

npm(Node Package Manager)node的包管理工具,顾名思义帮助管理包的,如包的初始化,项目依赖导入,上传等等。在Node.js安装完成后自动会下载。使用npm -v可查看。

注:这里Node.js在安装完成之后会在你的环境变量中的用户变量path中增加一个值 这是默认下载依赖的存储路径。

配置

本人安装node的路径是C:\Users\33135\Downloads\Nodejs,请根据实际修改为自己的安装路径

首先我们需要知道的是npm i(install)后我们的下的包在哪?A大,啧啧啧没人架小道不敢下。。。

上面不是用吗!!!

接下来可能会有点偏题。因为我想搞清楚这个值是如何添加到用户变量里的,因为机遇,我在C:\Users\33135\Downloads\Nodejs\node_modules\npm目录下,找到了一个npmrc的文件打开后内容为prefix=${APPDATA}\npm,和上图有些出入,是不是可以理解为我APPDATA这个变量代表的就是我的路劲信息。但是我的系统变量和用户变量都没有定义可能是在安装的时候定义的。有懂的老友可以评论区里解惑,阿里嘎多。

按理说,系统给我们的那不是我们想要的,名人艾伦·耶格尔说过"我们每个人打从出生开始就是自由的"。铁头娃我要自己设置下包路径。方法这不就来了吗?

接下来我们来修改npm全局模块的安装地址:

  • 在nodejs同级目录下建立一个副本文件nodejs_fb,并新建文件夹node_cacha和node_globe; 即:C:\Users\33135\Downloads\nodejs_fb
  • 运行 npm config set cache "C:\Users\33135\Downloads\nodejs_fb\node_cache" 设置缓存文件夹
  • 运行 npm config set prefix "C:\Users\33135\Downloads\nodejs_fb\node_globe" 设置全局模块存放路径 以后安装的全局模块都会被放到 C:\Users\33135\Downloads\nodejs_fb\node_globe文件夹下

如果是全局模块路径在非nodejs文件夹下,环境变量需要添加Path值:C:\Users\33135\Downloads\nodejs_fb\node_globe(根据自身情况修改)。如果未添加,npm无法在找到全局模块。

使用命令行输入 npm root -g,查看全局模块的安装路径是否正确。

也可以使用命令行输入 npm config ls,查看是否配置成功。如果在npm config ls的输出中看到prefix的路径和之前设置的路径一致,且cache的路径也正确,说明修改成功

如果想要配置在nodejs文件夹下,可以看这篇文章node安装及默认prefix(全局)和cache(缓存)文件夹地址修改(windows)

基础命令

想什么呢,就算你想学基础命令也不会从我这找啊。

所以我就随便写一点。

shell 复制代码
# 查看 npm 的版本 
$ npm -v  //6.4.0 << 安装成功会返回版本号

# 查看各个命令的简单用法
$ npm -l 
 
# 查看 npm 命令列表
$ npm help

# 查看 npm 的配置
$ npm config list -l

估计不会用的命令
$ npm search <搜索词> [-g]

# 读取package.json里面的配置单安装  
$ npm install 
//可简写成 npm i

# 默认安装指定模块的最新(@latest)版本
$ npm install [<@scope>/]<name> 

#卸载当前项目或全局模块 
$ npm uninstall <name> [-g] 

这里补充一下,一般我们想要搜索包的时候会去官网上查找。常用的一般为:npm官网 || 淘宝的npm镜像站

镜像设置

使用npm默认的官网镜像库带来的问题是:人家在国外,手不够长。下载速度都快赶上咱奶了。所以使用国内的镜像源比较快捷。

安装cnpm

简介:和npm差不多。

npm install -g cnpm --registry=https://registry.npm.taobao.org

使用nrm

nrm(npm registry manager)是npm的镜像管理工具,有时候国外的资源太慢,使用这个就可以快速地在npm源间切换。

  1. 在命令行执行命令,npm install -g nrm,全局安装nrm。
  2. 执行命令nrm ls查看可选的源。其中带*号的是当前使用的源。
  3. 如果要切换到taobao源,执行命令nrm use taobao

这里只讲述如何换镜像,想要了解更多的nrm使用可移步nrm使用

以上两种方法都可以使用npm config list查看registry是否正确。

Node.js版本管理

Node.js 默认一台电脑只能装一个版本,有时为了开发项目经常会使用不同版本的Node.js 版本,通常情况版本切换就比较麻烦了。

为了解决这个问题,nvm (node version manager)应运而生。有了 nvm,便可以在一台电脑上安装多个 Node.js 版本,并且可以一条指令随时下载或切换版本,而不需要频繁地下载/卸载不同版本的 node.js 来满足当前项目的要求。

这里尚未尝试,先挖个坑,以后再填。

感兴趣的朋友可以去某不知名网站看一看

END

再见兄弟们,我要偷偷学习去了。

相关推荐
__zRainy__1 小时前
Node.js Web 框架选型指南:从 Express 到 Hono 的全景对比
前端·node.js·express·koa·nestjs·egg·fastify
__zRainy__6 小时前
Node系列 · Node基础:net 模块
后端·node.js
嘟嘟071714 小时前
从浏览器到 hello world:Docker + nginx 反向代理 + Node 最小服务器一次讲清
docker·容器·node.js
FungLeo14 小时前
Node 后端实战 · 老系统数据迁移怎么不出乱子?V1→V2 重构实战与 3 个生产坑
node.js·serverless·数据库迁移·d1 数据库
今日无bug14 小时前
Tool Use 工具调用 —— 让LLM缸中大脑突破物理限制的3个阶段
node.js·llm·agent
To_OC1 天前
装完 ESLint 它一声不吭?我还以为代码写得多好
后端·node.js·eslint
FungLeo1 天前
Node 后端实战 · 列表查询到底怎么写?一个通用 DSL 封装,过滤分页排序一次搞定
数据库·node.js·serverless·dsl 封装·通用列表查询
_codemonster1 天前
npm run dev 是在开发模式运行,怎么在生产环境运行
前端·npm·node.js
渔夫正在掘金1 天前
Cordis 插件热插拔能力深度解析
后端·node.js
嘟嘟07172 天前
NestJS 入门:从 NestFactory 入口到 Module/Controller/Service 模块化结构一次讲清
typescript·node.js·nestjs