不一样的邂逅——初识Vue3
创始人
2025-05-29 18:31:31
0

不一样的邂逅——初识Vue3

  • 1、初识Vue3
  • 2、Vue3提升了什么
    • 2.1、性能的提升
    • 2.2、源码的升级
    • 2.3、拥抱TypeScript
    • 2.4、新的特性
  • 3、创建Vue3项目
    • 3.1、使用脚手架进行创建
    • 3.2、使用vite进行创建
    • 3.3、拓展——vite与webpack对比
  • 4、Vue3项目结构

1、初识Vue3

在熟悉一个项目我们首先是了解其官网、github、npm,首先我们先浏览一下Vue3的github Vue-3 Github

Vue3.0 版本代表了 2 年多的开发工作,包括 30+ RFC、2,600+ 提交、来自 628 个贡献者的 99 个拉取请求,以及核心存储库之外的大量开发和文档工作。我们要对接受这一挑战的团队成员、拉取请求的贡献者、赞助商和支持者的财务支持以及更广泛的社区参与我们的设计讨论并为预发布版本提供反馈表示最深切的感谢。Vue 是为社区创建并由社区维护的独立项目,如果没有您的持续支持,Vue 3.0 是不可能的。

2、Vue3提升了什么

2.1、性能的提升

  • 打包大小减少41%
  • 初次渲染快55%,更新渲染快133%
  • 内存减少54%

2.2、源码的升级

  • 使用Proxy代替defineProperty实现响应式
  • 重写虚拟DOM的实现和Tree-Shaking

2.3、拥抱TypeScript

  • Vue3可以更好的支持TypeScript,对于TypeScript可参考本文:TypeScript详解

2.4、新的特性

  1. Composition API(组合API)
    • setup配置、ref与reactive、watch与watchEffect、provide与inject
  2. 新的内置组件
    • Fragment、Teleport、Suspense
  3. 其他改变
    • 新的生命周期钩子、data 选项应始终被声明为一个函数、移除keyCode支持作为 v-on 的修饰符

3、创建Vue3项目

3.1、使用脚手架进行创建

## 查看@vue/cli版本,确保@vue/cli版本在4.5.0以上
vue --version
## 安装或者升级你的@vue/cli
npm install -g @vue/cli
## 创建
vue create web-vue3
## 启动
cd web-vue3
npm run serve

3.2、使用vite进行创建

vite官网:https://vitejs.cn

我们知道现存的打包构建工具都是采用的webpack,而这里使用的Vite就是用来对标webpack的,虽然现在还不足以撼动webpack的地位,但是未来的发展谁都不可预测,首先我们先看一下vite构建打包相对于webpack的优点,而对于weback打包配置可以参考:webpack5 打包工具 详解

  • 开发环境中,无需打包操作,可快速的冷启动。
  • 轻量快速的热重载(HMR)。
  • 真正的按需编译,不再等待整个应用编译完成。
npm init vite-app web-vite-vue3
cd web-vite-vue3
npm i
npm run dev

3.3、拓展——vite与webpack对比

在这里插入图片描述
在这里插入图片描述
这里直接从对应的官网上获取其打包的一个说明流程图

  • webpack:对于webpack来说,首先是通过对应的入口进行设置需要打包的资源,将资源打包完成之后再启动一个服务器提供访问
  • vite:对于vite的话是直接启动一个服务器不进行编译打包,后续再进行访问对应的页面再进行编译

总结: 在第一次启动项目的时候vite是比webpack块的多的,而后续页面重新编译渲染webpack更有优势

4、Vue3项目结构

Vue3的项目结构与Vue2的项目结构基本保持一致未发生大规模的改变

目录说明
public公共静态资源
index.html主页面
src
assets静态资源
components组件
App.vue主组件
main.js入口文件
package.jsonnpm依赖
vue.config.js启动配置

相关内容

热门资讯

Altium Designer... 目录Altium Designer(AD)软件使用记录15-PCB布线部分之优化和DRC处理一、线路...
通俗易懂了解Hadoop(更新... 从本书第5、6、7、8章,学习云计算开发相关知识 这是第五章 文章目录Hadoo...
LeetCode-198. 打... 目录暴力递归动态规划 题目来源 198. 打家劫舍 暴力递归 class Solution {pub...
js学习11(客户端存储) 目录 web storage IndexDB   web storage ### 前言࿱...
target.closest妙... 首先看下MDN:Element.closest() - Web APIs | MDN ...
并发编程(一)-Thread ... 一、什么是线程线程(英语:thread)是操作系统能够进行...
小白学Pytorch系列--T... 小白学Pytorch系列–Torch API (9) Spectral Ops stft 短时傅立...
Java二叉树的前中后序遍历 Java二叉树的前中后序遍历1.前序遍历1.1前序遍历概念1.2前序遍历习题2.中序遍历2.1中序遍...
遗传算法原理及案例解析 一、遗传算法原理 遗传算法—进化算法(Genetic Algorithm GA...
朴素贝叶斯学习报告 报告 朴素贝叶斯算法描述公式:  案例计算步骤: 一个数据集中有两个样本...
算法小课堂(一)暴力枚举 、 目录 一、概念 1.1相关概念 1.2应用场景 1.3局限性 二、相关问题 2.1例题1:统计 ...
OpenHarmony之doc... Docker使用示例 docker移植至OpenHarmony的过程可参考:https...
懒人专用高并发:Actor模型 传统多线程实现方式 public class MultiThreadExample implemen...
WEB安全 HTML基础 1.简单的HTML页面架构 charset  编码 gbk gbk2...
算法基础---基础算法(二) 文章目录 高精度         高精度加法高精度减法高精度乘法高精度除法前缀和 一维前缀和二维前缀...
【Docker】镜像的原理定制... 文章目录镜像是什么UnionFS(联合文件系统)Docker镜像加载原理...
vue3常用 Composit... 二、常用 Composition API 官方文档 1.拉开序幕的setup语法糖 理解࿱...
【MySQL】实验二 简单查询 目录 1. 查询课程代号为1301的成绩不及格的成绩信息 2. SQL查询:查询employee的j...
spring启动时加载外部配置... 平常同学们使用spring搭建工程时一些应用配置信息(例如数据库的连接配置、中间件的连...
《他是谁》爆火,优酷的成功并非... 今年国产电视剧市场又进入了新一轮的爆款时代,观众在前面刚送走《三体》《狂飙》ÿ...