作为鱿鱼须团队整的新活,新一代对标隔壁 Webpack 的打包工具 Vite,在 npm 上的下载量已经达到 5819.3 万(2022-11-03 数据),甚至 Vue 官方都推荐用它代替 vue-cli 来创建项目。
但不知道各位有没有想过,当咱照常创建一个 Vite 项目时,Node 究竟背着咱干了啥小事呢?
create-vite究竟是啥
一般情况下,各位都会使用这么创建 Vite 项目:
// npm 环境下
npm init vite
// yarn 环境下
yarn create vite
// pnpm 环境下
pnpm create vite
虽然咱明明白白写的是 init/create vite
,但咱也知道,Vite 本身仅仅是一个资源打包工具,并没有任何创建项目的能力。
所以,一定有一个幕后推手在操作,也就是本文的主角 —— create-vite
。不过为什么他叫 create-vite
呢?且慢慢听咯~
为啥npm init/yarn create的一定就是create-vite呢?
如果各位有过开发 React 项目的经历,那大家一定记得创建 React app 的指令(以下均以 npm 举例):
npm init react-app 项目文件夹名
而这里实际上所下载的包,名字并不是 react-app,而其实是 create-react-app
。
从此咱也就不难看出了,咱用 npm init xxx
命令时,会在本地创建一个目录,并下载 create-xxx 的包(也就是把包名给用 create- 拼接上),再通过它对项目进行初始化。
Vite与create-vite的关系?
还是刚才 create-react-app
的例子,虽然项目创建需要依赖 create-react-app
的帮助,但是这个 React App 实际上的核心程序是依靠 Webpack
来进行打包。
相同的,我们一般用 vue create xxx
来通过 vue-cli
来创建一个 Vue App,而它同样也是依靠 Webpack
打包。
那么各位,create-react-app
跟 Webpack
有关系吗?vue-cli
跟 Webpack
有关系吗?显而易见,没有任何关系。
所以说,create-vite
跟 Vite
也同样,尊的没有半毛钱关系,只不过就是名字长得太像了,所以容易混淆。
create-vite究竟怎么用?
要是咱进 create-vite
的 Github 项目页面,你会发现其中一大堆以 template-xxx
开头的文件夹,这里面就是 Vite 给咱准备的 “模板”。而以 create-vite
中的模板来创建一个 Vite 项目,就会比手敲配置装包要简单方便很多。
显而易见,这也就体现了 Vite 的 open-box(开箱即用)之处。
在 Node.js 命令行中,我们只需要输入 npm init vite 项目文件夹名 即可使用模板快速创建项目。
欸,devServer正常运行!