npm——基本使用

npm全称为Node Package Manager,是Node.js的包管理工具,它允许开发者轻松地安装、更新、卸载以及管理项目依赖的各种JavaScript库和工具。

基本使用方法

安装Node.js和npm
  1. 访问Node.js官网(https://nodejs.org/)下载适合您操作系统的Node.js安装包。Node.js安装程序通常会一并安装npm。

  2. 验证安装

    • 打开命令行工具(Windows上是CMD或PowerShell,macOS/Linux上是Terminal)。
    • 输入 node -v 查看Node.js版本。
    • 输入 npm -v 查看npm版本。
安装依赖
  • 本地安装(适用于项目特定的依赖):

    npm install <package-name>
    

    这会在项目的node_modules目录下安装包,并将依赖记录在package.json文件中的dependenciesdevDependencies字段。

  • 全局安装(适用于命令行工具等):

    npm install -g <package-name>
    

    -g标志表示全局安装,包会被安装到系统可执行路径中,所有项目都可以访问。

  • 使用savesave-dev

    当你安装一个包作为项目依赖时,可以通过添加--save参数将其记录到package.jsondependencies字段:

    npm install express --save
    

    如果安装的是开发时依赖(例如测试框架),可以使用--save-dev参数记录到devDependencies字段:

    npm install mocha --save-dev
更新依赖
  • 更新单个包:
    npm update <package-name>
    
  • 更新所有依赖至最新版本(谨慎操作,可能引起兼容性问题):
    npm update
    
卸载依赖
  • 卸载本地包:
    npm uninstall <package-name>
    
  • 卸载全局包:
    npm uninstall -g <package-name>
    
查找包
  • 搜索包:
    npm search <keyword>
    
镜像设置

为了加速下载或解决地区访问限制问题,可以配置npm使用镜像源。在中国,常用的镜像是npm的中国官方镜像cnpm,或者淘宝NPM镜像(tnpm)。

配置淘宝NPM镜像
  1. 临时使用(仅限当前终端会话):

    npm config set registry https://registry.npm.taobao.org
    
  2. 永久配置(修改用户配置文件):

    npm config set registry https://registry.npm.taobao.org --global
    

    这会修改全局.npmrc文件,以后每次使用npm都会自动指向淘宝镜像。

查看和重置镜像配置
  • 查看当前配置:
    npm config get registry
    
  • 重置为默认官方源:
    npm config set registry https://registry.npmjs.org --global
    
初始化项目
  • 在项目根目录下运行:
    npm init
    
    或快速初始化(跳过提问步骤):
    npm init -y
    
    这会创建一个package.json文件,记录项目信息和依赖。

不同操作系统的区别

  • 命令行差异

    • Windows用户可能需要在命令前加上cmd /c或使用PowerShell。
    • macOS/Linux用户直接在Terminal中运行命令。
  • 路径问题

    • Windows使用反斜杠\作为路径分隔符,但在命令行中通常需要使用正斜杠/或双反斜杠\\
    • macOS/Linux使用正斜杠/作为路径分隔符。
  • 权限问题

    • 在Linux或macOS上,全局安装可能需要sudo权限:
      sudo npm install -g <package-name>
      
      但出于安全考虑,建议配置npm以避免频繁使用sudo。

示例:完整流程

  1. 初始化项目

    mkdir myProject
    cd myProject
    npm init -y
    
  2. 安装Express(生产依赖):

    npm install express --save
    
  3. 安装Mocha作为开发依赖

    npm install mocha --save-dev
    
  4. 配置使用淘宝镜像

    npm config set registry https://registry.npm.taobao.org --global
    
  5. 更新所有依赖(确保在了解风险的前提下进行):

    npm update
    

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/827642.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Linux高性能服务器编程】两种高性能并发模式剖析——半同步/半异步模式

hello &#xff01;大家好呀&#xff01; 欢迎大家来到我的Linux高性能服务器编程系列之两种高性能并发模式介绍&#xff0c;在这篇文章中&#xff0c;你将会学习到高效的创建自己的高性能服务器&#xff0c;并且我会给出源码进行剖析&#xff0c;以及手绘UML图来帮助大家来理解…

《HCIP-openEuler实验指导手册》1.4 Apache MPM工作模式调整

MPM介绍 二、配置步骤 查看MPM当前工作模式 方法一&#xff1a; httpd -M | grep mpm方法二&#xff1a; 浏览器访问&#xff1a;http://IP:端口/server-status 方法三&#xff1a; cat /etc/httpd/conf.modules.d/00-mpm.conf查看 LoadModule mpm_event_module modules/mo…

Iterator 迭代器

意图 提供一个方法顺序访问一个聚合对象中的各个元素&#xff0c;且不需要暴漏该对象的内部表示。 结构 Iterator&#xff08;迭代器&#xff09;定义访问和遍历元素的接口。ConcreteIterator&#xff08;具体迭代器&#xff09;实现迭代器接口&#xff1b;对该聚合遍历是跟踪…

DSSM 模型技术介绍

转自&#xff1a;git 本文属于新闻推荐实战-召回阶段-DSSM召回模型。区别于策略召回&#xff0c;基于向量召回也是目前工业界常用的一种召回方法。这里我们将介绍一个比较经典的召回模型DSSM&#xff0c;希望读者可以快速掌握模型原理以及细节&#xff0c;同时可以了解具体的实…

Nacos原理简单介绍

注册中心原理 官网&#xff1a;Nacos 注册中心的设计原理 | Nacos nacos注册中心采用了 &#xff1a;pull &#xff08;客户端的轮询&#xff09;和push &#xff08;服务端主动push&#xff09;策略 客户端启动时会将当前服务的信息包含ip、端口号、服务名、集群名等信息封装…

K8S Pod 常见问题

Pod 常见问题 调试 Pod 查看 Pod 的当前状态和最近的事件 kubectl describe pods php-apache-7d4456444b-rdd4t查看一下 Pod 中的容器所处的状态。这些容器的状态都是 Running 吗&#xff1f;最近有没有重启过&#xff1f; 后面的调试都是要依靠 Pod 的状态的。 Pod 在 Pen…

电脑问题快速判断

电脑开机没有任何反应 检查电源 检查电源是否有问题或损坏&#xff0c;可以短接方法检测 板电源卡口对自己接第四或第五根线&#xff0c;若风扇匀速转动&#xff0c;电源无问题&#xff0c;若不转动或转一下停一下&#xff0c;电源有问题 检查内部连线 确保主板上的线插的…

2024新算法角蜥优化算法(HLOA)和经典灰狼优化器(GWO)进行无人机三维路径规划设计实验

简介&#xff1a; 2024新算法角蜥优化算法&#xff08;HLOA&#xff09;和经典灰狼优化器&#xff08;GWO&#xff09;进行无人机三维路径规划设计实验。 无人机三维路径规划的重要意义在于确保飞行安全、优化飞行路线以节省时间和能源消耗&#xff0c;并使无人机能够适应复杂…

西瓜书学习——对数几率回归

对数几率回归&#xff08;Logistic Regression&#xff09;是一种广泛应用于分类问题的统计方法&#xff0c;特别是用于二分类问题。尽管它的名字中包含“回归”&#xff0c;但它实际上是一种分类算法&#xff0c;用于估计一个样本属于某个类别的概率。 对数几率回归的核心是使…

手把手教你搭建鲜花团购小程序

随着互联网的快速发展&#xff0c;线上小程序商城已经成为了一种流行的电商模式。对于花店来说&#xff0c;开发线上小程序商城不仅可以扩大销售渠道&#xff0c;提高销售效率&#xff0c;还可以增加客户粘性&#xff0c;提升品牌形象。下面就以花店为例&#xff0c;教你怎么开…

OceanBase V4.2特性解析:用 Show Trace 快速定位数据库性能瓶颈

在数据库日常运维中&#xff0c;当遇到慢SQL问题时&#xff0c;若无法迅速查明原因&#xff0c;将极大地影响用户的使用感受&#xff0c;甚至可能引发业务或服务的中断。相较于单机数据库&#xff0c;分布式数据库系统因其涉及多个节点和多组件的协同工作&#xff0c;集群规模可…

全量知识系统 程序详细设计 定稿 之1 (QA SmartChat )

Q1. 从今天开始&#xff0c;我们进入到全量知识系统&#xff08;简称“全知系统”&#xff09;的程序详细设计的 整理成文阶段--“定稿”&#xff08;或“成熟”&#xff09;阶段&#xff08;相应的&#xff0c;前一阶段可以称为程序详细设计的“构思”&#xff08;或“喂养”&…

DSP开发实战教程--EPWM模块的影子寄存器详细讲解原理和代码实例

EPWM模块影子寄存器的原理 在TI(Texas Instruments)的DSP28335中,EPWM(Enhanced Pulse Width Modulator)模块提供了高精度、高灵活性的PWM信号生成功能。为了能在不影响当前PWM波形输出的情况下预装载新的PWM参数(如周期、占空比等),EPWM模块引入了影子寄存器的概念。 …

STM32 ADC转换器

一、ADC简介 ADC&#xff08;Analog-Digital Converter&#xff0c;模拟-数字转换器&#xff09;&#xff0c;可以将引脚上连续变化的模拟量转换为内存中存储的数字量&#xff0c;建立模拟电路到数字电路的桥梁 模拟量&#xff1a;时间和幅值均连续的信号&#xff0c;例如&…

MFC中CPropertyPage与CDialogEx的作用是什么,有什么区别,什么情况下会需要继承这两个类?

在MFC&#xff08;Microsoft Foundation Classes&#xff09;库中&#xff0c;CPropertyPage和CDialogEx是用于创建不同类型用户界面的类。以下是它们的作用、区别、使用方式以及何时需要继承这两个类的详细说明。 一、作用 CPropertyPage&#xff1a; CPropertyPage类用于创…

Linux I2C(五) I2C字符设备的注册和使用

1&#xff0c;i2c-tools的使用 Android-i2ctools 下载&#xff1a; https://github.com/skyxiaoyan1/android-i2ctool 编译会生成五个工具&#xff1a;i2cdetect、i2cset、i2cget、i2cdump、i2ctransfer&#xff0c;拷贝到开发板中就可以使用。 i2cdetect&#xff1a;用于扫…

sklearn 笔记 metrics

1 分类 1.1 accuracy_score 分类准确率得分 在多标签分类中&#xff0c;此函数计算子集准确率&#xff1a;y_pred的标签集必须与 y_true 中的相应标签集完全匹配。 1.1.1 参数 y_true真实&#xff08;正确&#xff09;标签y_pred由分类器返回的预测标签normalize 默认为 Tr…

LLama的激活函数SwiGLU 解释

目录 Swish激活函数 1. Swish函数公式 LLaMA模型中的激活函数 1. SwiGLU激活函数 2. SwiGLU激活函数的表达式 3. SwiGLU激活函数的优势 Swish激活函数 Swish是一种激活函数&#xff0c;其计算公式如下&#xff1a; 1. Swish函数公式 Swish(x) x * sigmoid(x) 其中&am…

MySQL 中的数据文件配置文件

数据文件 在 MySQL 中&#xff0c;根据使用的存储引擎&#xff0c;数据文件格式可以有很大的不同。这些不同的格式有助于优化数据库的性能、可靠性、数据恢复和维护。下面详细讲解常见的 MySQL 数据文件格式&#xff0c;包括它们的功能、使用情况和存储细节。 1. FRM 文件&am…

概率图模型在机器学习中的应用:贝叶斯网络与马尔可夫随机场

&#x1f9d1; 作者简介&#xff1a;阿里巴巴嵌入式技术专家&#xff0c;深耕嵌入式人工智能领域&#xff0c;具备多年的嵌入式硬件产品研发管理经验。 &#x1f4d2; 博客介绍&#xff1a;分享嵌入式开发领域的相关知识、经验、思考和感悟&#xff0c;欢迎关注。提供嵌入式方向…