比'Vue Cli'更高纬度的下一代前端工具|尤雨溪新品Vite的魔力
Madman 后端工程师

前言

现在前端cli工具已经比较成熟,而且用的也很方便,但是最近又出现了比’Vue Cli’更高纬度的下一代前端工具|尤雨溪新品Vite的魔力。
这些工具的出现是为了解决 ES Modules 模块系统本身的环境兼容问题、以及零散的模块文件导致的频繁网络请求发送和模块化发散的问题等等。
既然已经有了 Webpack,尤大再整一个 Vite 到底有啥用呢?

本质上,webpack 是一个现代 JavaScript 应用程序的静态模块打包器(module bundler)。

Vue 脚手架工具 vue-cli 使用 webpack 进行打包,开发时可以启动本地开发服务器,实时预览。因为需要对整个项目文件进行打包,开发服务器启动缓慢。

而对于开发时文件修改后的热更新 HMR 也存在同样的问题。
Webpack 的热更新会以当前修改的文件为入口重新 build 打包,所有涉及到的依赖也都会被重新加载一次。

Vite 则很好地解决了上面的两个问题。
先来打包问题
vite 只启动一台静态页面的服务器,对文件代码不打包,服务器会根据客户端的请求加载不同的模块处理,实现真正的按需加载。

对于热更新问题
vite 采用立即编译当前修改文件的办法。同时 vite 还会使用缓存机制( http 缓存 => vite 内置缓存 ),加载更新后的文件内容。
所以,vite 具有了快速冷启动、按需编译、模块热更新等优良特质。
综上所述,vite 构建项目与 vue-cli 构建的项目在开发模式下还是有比较大的区别:

  1. Vite 在开发模式下不需要打包可以直接运行,使用的是 ES6 的模块化加载规则;Vue-CLI 开发模式下必须对项目打包才可以运行。
  2. Vite 基于缓存的热更新,Vue-CLI 基于 Webpack 的热更新。

说了这么多,vite 到底应该怎么用呢?
我们简单来使用一下。
确保 Node 版本是大于等于 12 的。
使用 NPM 命令:

1
npm init @vitejs/app

然后按照提示进行操作!
您还可以通过其他命令行选项直接指定项目名称和要使用的模板。例如,要搭建Vite + Vue项目,请运行:

1
2
3
4
5
6
7
8
# npm 6.x
npm init @vitejs/app my-vue-app --template vue

# npm 7+, extra double-dash is needed:
npm init @vitejs/app my-vue-app -- --template vue

# yarn
yarn create @vitejs/app my-vue-app --template vue

支持的模板预设包括:

  • vanilla
  • vue
  • vue-ts
  • react
  • react-ts
  • preact
  • preact-ts
  • lit-element
  • lit-element-ts

详细查看vite官方文档

我本地创建Vite项目截图

我本地运行Vite项目截图

  • 本文标题:比'Vue Cli'更高纬度的下一代前端工具|尤雨溪新品Vite的魔力
  • 本文作者:Madman
  • 创建时间:2021-02-20 16:48:06
  • 本文链接:https://www.patpat.site/开发/前端/比Vue-Cli-更高纬度的下一代前端工具-尤雨溪新品Vite的魔力.html
  • 版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
 评论