探索npm run dev的运行逻辑

在这个周末 运行项目的时候突发奇想 一直在运行的npm run dev到底是个什么意思 于是 开始了这一期的主题 探索npm run dev的运行逻辑

npm run dev在哪里

在大部分的vite项目中 想必大家都知道 npm run dev 这个命令是在对应的package.json文件里面 也就是这里

js 复制代码
  "scripts": {
    "dev": "vite",
    "build": "vite build",
    "preview": "vite preview"
  } 

但如果在命令行中输入vite 尝试了一下是行不通的 那是为什么它可以如此运行呢? 都到这个地步了 总得去看看吧 那么我们就来see see 这是为什么呢

探索步骤

1.我们发现他是来自于vite 那么我们就去node包中寻找vite(ps:不知道为什么在掘金这里脚注没有作用,我手动脚注一下(挠头))

css 复制代码
[^node包]:node_modules

2.找到了之后我们去看一下里面的逻辑是怎么写的,发现在这里他用又跳了一层逻辑

3.之后我们按照他的"bin/vite.js"再去寻找

在这里我们发现了三个

三个不同的文件对应的是不同的平台适配

1.在第一个中 我们可以看到他是适配于UNIX系统的 通过shell脚本去执行vite.js

2.在第二个中 可以看到明显的后缀 cmd 基本适用于window系统

3.在第三个中 稍微复杂了一些 去搜了一些资料 大体是适配于 window mac unix等操作系统(感觉很牛逼 有大佬可以帮忙细细讲述一下嘛)

最后总结

package.json中 去bin去寻找不同适配环境 去找一个环境变量 去执行 vite.js 如果没有找到 那么就去 全局包中寻找 (也就是这个命令npm install -g) 如果这样子还是没有的话就会报错了~~~

相关推荐
qbbmnnnnnn6 分钟前
【CSS Tricks】如何做一个粒子效果的logo
前端·css
唐家小妹8 分钟前
【flex-grow】计算 flex弹性盒子的子元素的宽度大小
前端·javascript·css·html
涔溪9 分钟前
uni-app环境搭建
前端·uni-app
安冬的码畜日常13 分钟前
【CSS in Depth 2 精译_032】5.4 Grid 网格布局的显示网格与隐式网格(上)
前端·css·css3·html5·网格布局·grid布局·css网格布局
洛千陨14 分钟前
element-plus弹窗内分页表格保留勾选项
前端·javascript·vue.js
小小199215 分钟前
elementui 单元格添加样式的两种方法
前端·javascript·elementui
前端没钱35 分钟前
若依Nodejs后台、实现90%以上接口,附体验地址、源码、拓展特色功能
前端·javascript·vue.js·node.js
爱喝水的小鼠41 分钟前
AJAX(一)HTTP协议(请求响应报文),AJAX发送请求,请求问题处理
前端·http·ajax
叫我:松哥1 小时前
基于机器学习的癌症数据分析与预测系统实现,有三种算法,bootstrap前端+flask
前端·python·随机森林·机器学习·数据分析·flask·bootstrap
让开,我要吃人了1 小时前
HarmonyOS鸿蒙开发实战(5.0)网格元素拖动交换案例实践
前端·华为·程序员·移动开发·harmonyos·鸿蒙·鸿蒙开发