文章目录

  • 前言
  • webpack、Rollup、Vite 的区别
  • 搭建 Vite 项目
  • 总结

前言

虽然市面上有很多的打包工具,例如 webpackRollup 以及 Parcel 等。毫无疑问,通过使用这些工具,在很大程度上改善了前端开发者的游戏体验。
但随着业务变得越来越复杂,我们不得构建比之前更大型的应用。此时,所需要处理的代码量也越来越大。这时候,上面提到的打包工具就开始遇到性能瓶颈,我们可能需要很长的时间才能启动开发服务器,这样一来,开发效率就变得越来越低。
针对这一现状,大佬们又构建了一个打包工具 ,也就是今天文章的主角 - ViteVite 旨在利用生态系统中的新进展来解决上面的问题,通过将应用中的 依赖源码 相分开,从而缩减开发服务器的启动时间。

webpack、Rollup、Vite 的区别

由于自己更多的是和后端打交道,所以这里对三者的区别介绍仅限于表面,至于更深一层的代码层面的区别,还请各位自行去了解。经过查阅资料,这里简单给出下 webpackRollup 以及 Vite 的区别,先说一个总结论:

webpack 更适合打包项目,Rollup 更适合打包库,而 Vite 基于 Rollup,实现了热更新的同时也十分适合打包项目。

工具 webpack Rollup Vite
区别 1. 支持代码切割,从而实现分包
2. 支持 HMR,实现热更新
1. 基于 esm 打包,生成的文件体积更小
2. 原生支持 tree-shaking
1. 生产环境通过 Rollup 打包生成 esm 模块包,因此打包的体积小
2. 生产环境基于浏览器支持 esm,让浏览器解析模块,然后服务器按需编译返回
3. 热更新,实现按需编译,不像 webpack 需全部重新编译并更新

搭建 Vite 项目

说完上边的内容之后,接下来就来看看,如何大家我们的第一个 Vite 项目。

需要注意的是,要使用 Vite 的前提是电脑中有 Node.js,而且版本需要 >=12.0.0,至于个别模块可能需要更高版本的 Node.js 才能正常运行,此时就需要注意升级 Node.js 的版本。

如果你不清楚你的电脑中是否安装了 Node.js,那么可以在控制台中使用如下命令进行查询。

// 查看 node 版本
node --version
// 查看 npm 版本
npm --version

如何还是不太清楚,那么可以参考我之前的一篇文章:

Windows 教程:Node.js 安装教程

初始工作做好之后,我们就可以开始搭建我们的第一个 Vite 项目了。

如果我们只是要构建一个 Vite 项目,那么简单地使用以下命令即可。

npm create vite@latest

然后根据提示进行相关设置即可,这里需要注意的是它会让我们选择框架,这就需要根据我们的需求来进行选择了。

比如我们要创建一个基于 Vue 的项目,那么可以选择 Vue 模板,然后再进行下一步。

选择变体,是基于 Vue 还是 Vue-ts

最后,等待项目创建完毕即可。

然后根据它的提示,依次执行以下三个命令即可。

// vite-project 是项目名
cd vite-project
npm install
npm run dev

接着在浏览器中访问以下地址:

http://localhost:3000

如果一切正常,那么应该就会出现以下的界面了,至此我们的第一个 Vite + Vue 项目就搭建成功了!

当然,除开使用上面的命令来创建之外,我们还可以通过附加的命令选项来执行项目的名称和想要使用的模板。不过这里需要注意,根据你电脑上 npm 版本的不同,需要使用不同的命令。

如果你的 npm6.x 版本,那么要使用以下命令:

// my-vue-app 是项目名称,--template 后紧跟模板
npm create vite@latest my-vue-app --template vue

如果 npm 版本 7.x 及以上版本,那么则需要使用如下命令,一定不要忘记多出来的

// my-vue-app 是项目名称,--template 后紧跟模板
npm create vite@latest my-vue-app -- --template vue

同样的,我们依次执行提示的三条命令。

cd my-vue-app
npm install
npm run dev

最后,同样在浏览器中访问 http://localhost:3000,不出意外同样可以看到以下的界面。

总结

以上就是本文的所有内容了,主要介绍了 Vite 由来的背景,并简单对比了下 webpackRollupVite 三个打包工具的区别,最后则是利用两种方式来创建了 Vite + Vue 的实例。

搭建 Vue + Vite 入门项目相关推荐

  1. H5盲盒商城网站源码开发小程序抽奖系统商城搭建 VUE+PHP后台项目

    这是H5盲盒商城网站源码开发小程序抽奖系统商城搭建 VUE+PHP后台项目(代码不加密,开源) 1.带推广二维码功能 2.含充值3级分销功能 3.盲盒回收成余/额功能 等功能 可以个性化定制开发等 源 ...

  2. 国外多语言盲盒商城网站源码开发搭建 VUE+PHP后台项目

    这是H5盲盒商城网站源码开发小程序抽奖系统商城搭建 VUE+PHP后台项目(代码不加密,开源) 1.带推广二维码功能 2.含充值3级分销功能 3.盲盒回收成余/额功能 等功能 可以个性化定制中文,英文 ...

  3. 2021-03-24 从零开始搭建vue移动端项目

    从零开始搭建vue移动端项目 一.Vue项目搭建 二.使用步骤 1.初始化 2.路由 3.Vuex(状态管理) 4.Axios(数据请求模块) 5.使用Less 6.移动端适配 7.注意事项 8.移动 ...

  4. 上手一个 Vue 的入门项目 Markdown 在线简历 ( 一 )

    项目详细描述 见首发帖 https://learnku.com/vuejs/t/44056 项目名称 1024 RESUME 项目地址 网站 https://resume.1024.cool GitH ...

  5. vue vite创建项目的使用(使用技术栈vue3+vuex+router+ts+element plus)

    文章目录 前言 创建vite项目 vite.config.ts配置 自动化引入组件配置以及.env配置的引用 创建src/vite-env.d.ts main.ts配置 api/request.ts ...

  6. 从零开始搭建vue移动端项目到上线的步骤

    初始化项目 1.在安装了node.js的前提下,使用以下命令 npm install --g vue-cli 2.在将要构建项目的目录下 vue init webpack myproject(项目目录 ...

  7. Idea搭建VUE+elementUi前端项目

    1.首先打开idea选择 javascript 2.项目web项目搭建成功 3.先输入vue in it webpack,路由之前全部回车,包括路由!路由之后全部选n回车!最后一个选npm就行了,就让 ...

  8. 搭建Vue后台管理项目

    从0开始快速搭建一个后台管理系统,搭建好之后就是下面这种形式 安装node环境:下载地址:Node.js 安装脚手架:npm install -g @vue/cli 创建vue项目:vue creat ...

  9. vue动态发布到线上_从零开始搭建vue移动端项目到上线

    先来看一波效果图 初始化项目 1.在安装了node.js的前提下,使用以下命令 npm install --g vue-cli 2.在将要构建项目的目录下 vue init webpack mypro ...

最新文章

  1. STL中用erase()方法遍历删除元素
  2. python爬百度翻译-教大家用python爬取百度翻译,超简单
  3. GridView的多主键(Key)取值问题
  4. mysql越筛越少_面试官:为什么SELECT * 会导致查询效率低?
  5. 浏览器了解(二)HTML解析过程
  6. php图像无法显示,php – 无法显示图像,因为它包含错误[图像生成器]
  7. pytest十三:配置文件 pytest.ini
  8. STM32工作笔记0060---窗口看门狗实验
  9. 8月8日白暨豚宣告灭绝
  10. 从零开始学Kotlin-类的继承(6)
  11. 学校计算机社团都干些什么,学校计算机社团工作计划
  12. nginx or apache前端禁收录,爬虫,抓取
  13. java安装报错循环冗余检查_Java中循环冗余校验的实现方式介绍
  14. Android并发之Executor(线程池)家族(二)之AtomicInteger
  15. 在做微信公众号网页授权的时候,有时会重定向两次网页(302问题)
  16. R语言 quantmod 如何下载汇率
  17. mysql 字段数量不确定_不定字段数目的数据库表设计和数据结构 | 学步园
  18. Cay S.Horstmann:从Java新特性看Java的未来
  19. 民间高手细讲炒股秘笈
  20. c语言a-gt;ave=0.0什么意思?,来位c语言的大神把,来把这个程序解释一遍吧!跪求啊...

热门文章

  1. 详解Java四大作用域
  2. selenium绕过滑块验证登录淘宝网
  3. html图片3d球体,HTML5 三维透视球体运动
  4. java swing 图层_Java swing图层的问题
  5. 直播APP开发功能说明
  6. python串口界面编程_python串口通信界面
  7. js获取当前年月日yyyymmdd格式的代码
  8. CI24R1 2.4G低成本氛围灯解决方案
  9. eclipse安装scala插件
  10. 计算机二级python考试大纲