返回顶部
首页 > 资讯 > 精选 >Node.js中npx命令的用法及使用场景介绍
  • 561
分享到

Node.js中npx命令的用法及使用场景介绍

2023-06-20 18:06:37 561人浏览 八月长安
摘要

这篇文章主要介绍“node.js中npx命令的用法及使用场景介绍”,在日常操作中,相信很多人在node.js中npx命令的用法及使用场景介绍问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Node.js中npx

这篇文章主要介绍“node.js中npx命令的用法及使用场景介绍”,在日常操作中,相信很多人在node.js中npx命令的用法及使用场景介绍问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Node.js中npx命令的用法及使用场景介绍”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

npx使用教程

今晚在学习Vue-Cli时, 由于突发奇想想试试最新的@4.x.x版本, 但是本地全局安装的脚手架版本是@2.x.x的, 因为不想污染全局于是就想到用npx命令, 一路上踩坑不断, 为了以后能够更好的使用npx并区分其跟npm的指令, 就有了本篇笔记

npm 是从5.2版开始, 增加(自带)了 npx 命令。 如果发现没安装请手动安装:

npm i -g npx

npm与npx的概念

  • NPM(Node Package Manager) 是Node.js提供的一个包管理器, 可以使用 NPM 来安装 node.js 包

  • NPX(Node Package Excuted) 可以理解为用于临时安装并执行某个包的一个工具

总结的来说:

  • npm专注于安装包

  • npx专注于执行包, 并且是较特殊的执行

npx的使用场景(对比npm的一些优势)

从几个使用场景出发, 希望能够有对应您当前的场景, 这样就能直接套用了

使用场景1: 想用项目中已经安装好的某个包, 但是不能直接执行(因为没有全局安装, 涉及环境变量的问题)

对于这个场景, 有些笨方法:

  • 到项目的根目录下执行: node-modules/.bin/包对应的脚本

  • 配置npm script: 在package.JSONscripts中将方法1添加进脚本, 然后就能在需要的时候执行"npm run 自定义指令"以快速执行啦, 本质上只是对方法1的改进

更优雅的方法, 就是使用npx命令啦:

npx <包对应的命令>

# 以less编译为例:
npx lessc -v  # 查看当前项目下less编译器的版本

使用场景2: 已全局安装某个包, 项目又已安装了不同版本的某个包, 想用项目的那个版本

以我今晚的踩坑作为第二个使用场景, 我本地已经全局安装了Vue脚手架的@2.x.x版本, 但是我想用并已经在本地项目文件目录中安装了最新的@4.x.x版本, 即:

# 已经执行过npm i -g vue-cli@2vue -V # vue@2.9.6# 已经执行过cd my-projectnpm i -D @vue/cli@4vue -V # vue-cli@4.5.13

这时, 如果使用vue -V会发现使用的是全局的版本, 因为npm默认会执行全局中的包。如果想使用项目已经安装的那个版本就直接执行如下命令:

npx <包对应的命令># 以vue-cli为例:npx vue create my-project

使用场景3: 不想全局或在项目中安装某个包, 只想临时使用

对于这种场景, npx就是必要的选择。npx会将要用的下载到一个临时目录, 使用完毕后自动删除, 还是以Vue-Cli为例: 这次的我突发奇想想看看React脚手架的项目文件结构,由于我还没学, 所以本地和全局都没有安装(只是临时想用脚手架创建一个React项目)

npx create-react-app my-react-project #react脚手架将会在项目搭建完后自动被删除掉

使用场景4: 临时使用特定版本的包(本地没有安装)

如题所示, 这里以我突发奇想想使用Vue脚手架的@3.x.x版本, 但是我全局已经安装了@2.x.x版本

cd my-vue-project   # 进入我的vue项目npx @vue/cli@3 create big-project   # 利用vue-cli的3.x版本创建一个名为big-project的项目

关于npx的一些参数

  1. 安装并使用特定版本: npx 包@版本号 包对应的命令

  2. --no-install 强制使用本地包, 本地包如果没安装就会报错: npx --no-install vue create my-project

  3. --ignore-existing 强制安装使用远程模块: npx --ignore-existing vue create my-project

  4. -p 对于一次性安装多个包,使用参数-p: npx -p @vue/cli -p less 切记: 安装多个包一定要使用 -p

  5. -c 在一次性安装并使用多个包的场景中: 在低版本下执行npx -p vue-cli -p less lessc -v & vue -V命令, 有可能只有第一个命令项能正常执行, 即:只打印出less编辑器的版本。npx的参数-c就是为了告诉npx执行指定的所有命令的范围: npx -p vue-cli -p less -c "lessc -v & vue -V", 这样就能保证绝对的安全了。注: &代表两个命令都执行, |代表前面执行成功后面命令就不执行

这一小节中最常用、重要的是第5点, 根据此总结: 不管安装的包、命令的个数个数是多少(哪怕只安装1个包), 严格遵守npx -p 包1 -p 包2 -p 包n -c "命令1 & 命令2 & 命令n" 一定没错

到此,关于“Node.js中npx命令的用法及使用场景介绍”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

--结束END--

本文标题: Node.js中npx命令的用法及使用场景介绍

本文链接: https://lsjlt.com/news/299329.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Node.js中npx命令的用法及使用场景介绍
    这篇文章主要介绍“Node.js中npx命令的用法及使用场景介绍”,在日常操作中,相信很多人在Node.js中npx命令的用法及使用场景介绍问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Node.js中npx...
    99+
    2023-06-20
  • Node.js中npx命令的使用方法及场景分析
    npx使用教程 今晚在学习Vue-Cli时, 由于突发奇想想试试最新的@4.x.x版本, 但是本地全局安装的脚手架版本是@2.x.x的, 因为不想污染全局于是就想到用npx命令, 一...
    99+
    2024-04-02
  • futuretask用法及使用场景介绍
    FutureTask可用于异步获取执行结果或取消执行任务的场景。通过传入Runnable或者Callable的任务给FutureTask,直接调用其run方法或者放入线程池执行,之后可以在外部通过FutureTask的get方法异步获取执行...
    99+
    2023-05-31
    java futuretask
  • Node.js的特点和应用场景介绍
    Node.js应该是当今最火热的技术之一。本文主要介绍Node.js的特点及应用场景。 Node.js是一个基于Chrome JavaScript运行时建立的一个平台,用来方便地搭建快速的 易于扩展的网络应...
    99+
    2022-06-04
    场景 Node js
  • Golangerror使用场景介绍
    目录前言error调用栈前言 在Go的编程中, error的使用场景数不胜数, 主要就是用来处理各种异常情况. 长久以来, 我的使用方式都是这样的: err := errors.Ne...
    99+
    2023-03-15
    GoLang error Go error使用场景
  • Javaredis使用场景介绍
    目录1.作为缓存1.1 为何使用1.2 什么样的数据适合放入缓存1.3 使用redis作为缓存1.3.1 未使用配置类1.3.2 使用配置类2.分布式锁2.1 压测工具的使用2.2 ...
    99+
    2024-04-02
  • .NetCoreSDK命令介绍及使用
    dotnet run 介绍 dotnet 相关命令是属于 .NET Core command-line (CLI) 的一部分,Microsoft 为我们提供了这个命令行工具以供我们在...
    99+
    2024-04-02
  • ThreadLocal原理介绍及应用场景
    本次给大家介绍重要的工具ThreadLocal。讲解内容如下,同时介绍什么场景下发生内存泄漏,如何复现内存泄漏,如何正确使用它来避免内存泄漏。 ThreadLocal是什么...
    99+
    2024-04-02
  • React使用ref方法与场景介绍
    目录摘要1.ref的挂载2.使用ref的三种方式3.ref的使用场景摘要 不管在Vue中还是React,如果我们想使用一个元素的DOM,不需要通过JS中操纵DOM的方法,它们提供了一...
    99+
    2022-11-13
    React ref React ref用法
  • JDBC中PreparedStatement详解及应用场景介绍
    前言 在Java中,当需要向数据库中执行SQL语句并传递参数时,我们通常会使用PreparedStatement接口。PreparedStatement继承自Statement接口,用于预编译SQL语句并执行参数化查询,这样可以提高执行...
    99+
    2023-09-22
    sql java mybatis 数据库 mysql
  • Linux下Ldd命令介绍及使用方法
    本篇内容主要讲解“Linux下Ldd命令介绍及使用方法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Linux下Ldd命令介绍及使用方法”吧!Linux Ldd参数说明:--version  打...
    99+
    2023-06-13
  • Vue.js的作用域插槽的介绍以及使用场景
    这篇文章主要介绍“Vue.js的作用域插槽的介绍以及使用场景”,在日常操作中,相信很多人在Vue.js的作用域插槽的介绍以及使用场景问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解...
    99+
    2024-04-02
  • Vue.set与this.$set的用法与使用场景介绍
    目录Vue.set()和this.$set()介绍:一。为什么有Vue.set二。解决方法数组对象三。Vue.set对于数组对于对象注意四。使用场景Vue.set()和this.$s...
    99+
    2024-04-02
  • mysql中蠕虫复制的使用场景介绍
    本篇内容介绍了“mysql中蠕虫复制的使用场景介绍”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!说明将一个表的数据迁移到另一个表,或者将一部...
    99+
    2023-06-20
  • MySQL中的数据类型及其应用场景介绍
    MySQL是一种常见的关系型数据库管理系统,广泛应用于各种系统和应用程序中。在MySQL中,数据以不同的数据类型存储在表中。本文将介绍MySQL中常见的数据类型及其应用场景,并附有代码示例。一、整数类型整数类型(INT):用于存储正负整数值...
    99+
    2023-10-22
    适用于表示年龄 数量等整数值) 适用于表示用户名
  • 介绍Git的设置命令及其用法
    Git 是目前最流行的版本控制工具之一,同时也是很多开发团队必备的工具之一。使用 Git 可以很方便地管理项目的代码,包括代码的修改、合并、回滚等操作。在使用 Git 进行版本控制时,设置命令是非常常见的操作。本篇文章将介绍 Git 的设置...
    99+
    2023-10-22
  • Numpy中Meshgrid函数介绍及2种应用场景
    Meshgrid函数是NumPy中的一个函数,用于生成一个二维坐标网格。它接受两个一维数组作为输入,然后返回两个二维数组,分别表示这...
    99+
    2023-09-20
    Numpy
  • Oracle服务介绍及应用场景解析
    Oracle服务介绍及应用场景解析 Oracle公司是全球著名的数据库软件公司,其产品Oracle Database是业界领先的关系型数据库管理系统(RDBMS)。Oracle Dat...
    99+
    2024-03-02
    数据管理 应用场景 sql语句 用户权限管理 敏感数据 数据丢失
  • Golang反射介绍及应用场景分析
    go 语言中的反射功能允许程序在运行时检查和修改类型的结构。通过使用 type、value 和 reflect.kind,我们可以获取对象的类型信息、字段值和方法,还可以创建和修改对象。...
    99+
    2024-04-03
    golang 反射
  • linux中sed命令的用法介绍
    本篇内容介绍了“linux中sed命令的用法介绍”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!sed命令行格式为:  &...
    99+
    2023-06-13
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作