素材巴巴 > 程序开发 >

npm包-命令

程序开发 2023-09-05 20:33:57

Tips:

本文中“npm包”指的npm安装的包。

本文通过分析内在逻辑,能够清楚解释全局安装包为什么会产生全局命令,局部安装包为什么可以通过npm run 执行

先上结论:

分析

首先,明确一点,一个包暴露出去的命令是写在这个包的package.json文件的bin属性中的

bin属性用来指定各个内部命令对应的可执行文件的位置

e.g. yarn包的package.json文件
在这里插入图片描述
然后,明确安装位置

最后,bin属性配置的命令,

我猜想,在webStorm的命令行中,执行命令时,npm是运行的;而一般的命令行工具,比如cmd中,没有这个特性,所以在cmd中不能直接运行这些命令
在这里插入图片描述在这里插入图片描述
对于一般的命令行中不能直接运行包命令的问题,可以通过npx解决:
在这里插入图片描述
npx出现主要解决的问题就是调用项目内部安装的模块,所以你可以在项目中执行npx 包命令。

  1. 执行npm run 命令时,package.json中的scripts会按照一定顺序寻找对应命令的位置,本地的node_modules/.bin也在寻找的清单中。所以本地安装的包的命令也可以执行

补充

  1. 随node安装的npm【npm也是全局命令】
    在这里插入图片描述
    在这里插入图片描述
  2. npm全局安装包
    在这里插入图片描述
    在这里插入图片描述
  3. npm局部安装包 【一般在某个项目下进行安装】
    在这里插入图片描述

在这里插入图片描述


标签:

素材巴巴 Copyright © 2013-2021 http://www.sucaibaba.com/. Some Rights Reserved. 备案号:备案中。