💚 Vue.js

渐进式 JavaScript 框架 — 自底向上逐层应用

← 返回首页

概述

Vue.js 由尤雨溪(Evan You)于 2014 年首次发布,是目前全球最受欢迎的三大前端框架之一。Vue 倡导"渐进式"设计理念——你可以只用它的响应式视图层,也可以搭配路由、状态管理、SSR 等官方工具构建大型单页应用(SPA)。中文社区活跃度高,文档翻译完善。

核心特性

声明式渲染:模板语法让 DOM 始终与数据保持同步。
响应式系统:基于 Proxy(Vue3)自动追踪依赖变化。
组件化:将 UI 拆分为独立复用的单元,每个组件含 Template + Script + Style。
虚拟 DOM:Diff 算法最小化实际 DOM 操作,提升更新性能。
TypeScript 友好:Vue3 源码完全采用 TS 重写。
Composition API:逻辑复用更清晰,适合复杂组件。

Hello World

<template> <div>{{ message }}</div> </template> <script setup> import { ref } from 'vue' const message = ref('Hello, Vue!') </script>

响应式原理对比

维度Vue 2Vue 3
检测方式Object.definePropertyProxy
数组索引无法直接监听原生支持
属性增删需 Vue.set/Vue.delete直接赋值即可
初始化成本递归遍历全部属性惰性拦截,按需创建
打包体积~33KB gzipped~13KB gzipped(Tree-shaking)

官方全家桶与生态系统

生命周期钩子

  1. onBeforeMount — 挂载前,DOM 尚未创建
  2. onMounted — 挂载完成,可访问真实 DOM,常在此发起异步请求
  3. onBeforeUpdate — 数据变化导致重新渲染之前
  4. onUpdated — 重新渲染完成后
  5. onBeforeUnmount — 卸载前,清理定时器 / 事件监听
  6. onUnmounted — 彻底销毁,清除副作用

适用场景

Vue 非常适合内容管理系统、中后台仪表盘、电商前台、数据可视化大屏以及需要快速迭代的 SPA。其学习曲线平缓,开发者可以从小模块逐步引入;当业务复杂时再用 Pinia、Nuxt 等工具增强能力。TypeScript 的全面支持和 Vite 的极速构建体验使其在 2026 年仍是最受开发者欢迎的前端方案之一。