什么是npx

第一次看到npx命令是在 babel 的文档里

Note: If you do not have a package.json, create one before installing. This will ensure proper interaction with the npx command.

在自己的机器上试了下,真的有这个命令,于是去查了下 npm 官方信息,发现这个在 npmv5.2.0引入的一条命令(链接)。引入这个命令的目的是为了提升开发者使用包内提供的命令行工具的体验。

为什么引入这个命令

举个例子,我们开发中要运行 parcel 命令来打包:parcel index.html,以前有这么几种方式:

  1. 全局安装 parcel,但有时不同项目使用不同版本,不允许使用全局包,只能考虑下面一些方法
  2. 使用 npm scripts,在 package.json 加一个 script

    "scripts": {
    "start": "parcel index.html"
    }
  3. 将 node_modules 的可执行目录加到 PATH 中,

    alias npmx=PATH=$(npm bin):$PATH
    npmx parcel index.html
  4. 指定可执行命令路径

    ./node_modules/.bin/parcel index.html

现在我们有了 npx 命令,就不在需要考虑以上方法了(其实
npx 是对方法 3 的封装)。当我们执行 npx parcel index.html 时,会自动去./node_modules/.bin目录下搜索。

npx 还允许我们单次执行命令而不需要安装,例如

npx create-react-app my-cool-new-app

这条命令会临时安装 create-react-app 包,命令完成后 create-react-app 会删掉,不会出现在 global 中。下次再执行,还是会重新临时安装。

npx命令介绍的更多相关文章

  1. npx 命令介绍

    这个是在 npmv5.2.0引入的一条命令(查看),引入这个命令的目的是为了提升开发者使用包内提供的命令行工具的体验. 为什么引入这个命令 举个例子,我们开发中要运行 parcel 命令来打包:par ...

  2. 12个Linux进程管理命令介绍(转)

    12个Linux进程管理命令介绍 [日期:2015-06-02] 来源:Linux中国  作者:Linux [字体:大 中 小]   执行中的程序在称作进程.当程序以可执行文件存放在存储中,并且运行的 ...

  3. 2.SDK目录结构和adb工具及命令介绍

    安卓开发学习笔记 1.安卓开发之环境搭建 2.SDK目录结构和adb工具及命令介绍 1.SDK目录介绍: ******************************** add-ons:Androi ...

  4. git各种命令介绍以及碰到的各种坑

    一.各种命令介绍: git pull:从其他的版本库(既可以是远程的也可以是本地的)将代码更新到本地,例如:'git pull origin master'就是将origin这个版本库的代码更新到本地 ...

  5. tar.xz如何解压:linux和windows下tar.xz解压命令介绍

    在linux下怎么解压和压缩tar.xz文件? (本文由www.169it.com搜集整理) 在linux下解压tar.xz文件步骤 1 2 # xz -d ***.tar.xz  //先解压xz # ...

  6. 查看MySQL数据库表的命令介绍

    如果需要查看MySQL数据库中都有哪些MySQL数据库表,应该如何实现呢?下面就为您介绍查看MySQL数据库表的命令,供您参考. 进入MySQL Command line client下查看当前使用的 ...

  7. Docker学习总结之Run命令介绍

    Docker学习总结之Run命令介绍 本文由Vikings(http://www.cnblogs.com/vikings-blog/) 原创,转载请标明.谢谢! 在使用Docker时,执行最多的命令某 ...

  8. maven常用命令介绍

    mvn 3.0.4 创建maven项目命令  mvn  archetype:generate   -DgroupId=damocles-autocredit -DartifactId=damocles ...

  9. [转帖]十二 个经典 Linux 进程管理命令介绍

    https://www.cnblogs.com/swordxia/p/4550825.html 接了 http referer 头 没法显示图片 可以去原始blog 里面去查看.   随笔- 109  ...

随机推荐

  1. Redis进阶之使用Lua脚本开发

    1.在Redis中使用Lua 在Redis中执行Lua脚本有两种方法:eval和evalsha. (1)eval eval 脚本内容 key个数 key列表 参数列表 下面例子使用了key列表和参数列 ...

  2. Eclipse中快捷键Ctrl + Alt + 向上箭头 或者 Ctrl + Alt + 向下箭头与Windows冲突

    原文地址:https://blog.csdn.net/buaaroid/article/details/50804608 clipse中按ctrl + alt + 向上箭头没有任何反应,按ctrl + ...

  3. 关于php中 json_encode 编码成json数据参数说明

    JSON_UNESCAPED_SLASHES   编码不要转义符 \ 反斜杠 JSON_UNESCAPED_UNICODE   编码不转义成 unicode 字符串 如果如果多个参数可以用 | 隔开添 ...

  4. webstorm配置svn详解

    1. 打开webstorm-> file -> setting -> plguins 输入svn如果没有SVNToolBox就在下面的列表中安装SVNToolBox插件即可. 2.c ...

  5. Spring项目定时任务

    最近某协会网站有个需求:显示当天访问量,很明显需要做俩步:一个是访问请求量的显示,一个需要每天00点恢复访问次数为0 所以需要做个定时任务:每天00点更新: 注解用法Spring配置: 1.在spri ...

  6. 能ping通虚拟机中的Ubuntu,使用XShell连不上

    1.在宿主机上telnet 虚拟机ip  22如果显示端口无法接通,说明你的/etc/init.d/sshd 是stop或者是异常的. 2.如果没有sshd服务,使用" sudo apt-g ...

  7. linux环境下在springboot项目中获取项目路径(用于保存文件等)

    //application.properties中设置:(file.path=static/qrfile/)//保存到static文件夹下的qrfile目录@Value("${file.pa ...

  8. 在ConoHa上Centos7环境下源码安装部署LNMP

    本文记录了从源码,在Centos 7上手动部署LNMP环境的过程,为了方便以后对nginx和mariadb进行升级,这里采用yum的方式进行安装. 1.建立运行网站和数据库的用户和组 groupadd ...

  9. Add AI feature to Xamarin.Forms app

    Now, AI is one of important technologies.Almost all platforms have API sets of AI. Following list is ...

  10. Java中JSON之全

    1.           在不知道你要转的对象的类型的时候,用com.alibaba.fastjson.JSON.parse();     Object parse = com.alibaba.fas ...