Vue3 基础概念与环境搭建

一、Vue3 简介

Vue3 是 Vue.js 的最新主要版本,于 2020 年 9 月正式发布。它在性能、可维护性和开发体验方面都有了显著的改进。相比 Vue2,Vue3 的主要特点包括:

  1. 更高效的响应式系统 :使用 Proxy替代了 Object.defineProperty,解决了数组和深层嵌套对象监听的问题。

  2. 组合式 API(Composition API) :提供了更灵活的方式来组织组件逻辑,尤其适合复杂场景下的代码复用。

  3. 更好的 TypeScript 支持:Vue3 内置对 TypeScript 的友好支持,使得类型推导更加准确。

  4. 体积更小,性能更高 :通过 Tree-shaking 和优化核心库,Vue3 的体积更小,运行效率更高。

二、Vue3 基础概念

(一)响应式系统的改进

Vue3 的响应式系统是其最重要的改进之一。在 Vue2 中,响应式依赖于 Object.defineProperty,这种方式存在以下问题:

  • 无法监听对象属性的动态添加或删除。

  • 对数组的操作支持有限。

Vue3 使用了 ES6 的 Proxy 来实现响应式,解决了这些问题。例如:

复制代码
const handler = {
  get(target, key, receiver) {
    console.log(`获取属性: ${key}`);
    return Reflect.get(target, key, receiver);
  },
  set(target, key, value, receiver) {
    console.log(`设置属性: ${key} = ${value}`);
    return Reflect.set(target, key, value, receiver);
  }
};
 
const state = new Proxy({ count: 0 }, handler);
 
state.count++; // 输出:获取属性: count,设置属性: count = 1

通过Proxy,Vue3 能够全面监听对象和数组的变化,从而提升性能和开发体验。

(二)组合式 API

组合式 API 是 Vue3 引入的一项重要特性,旨在解决 Vue2 中选项式 API 在复杂组件中逻辑分散的问题。它的核心思想是将相关的逻辑组合在一起,而不是按照选项(如 datamethods)来组织。

示例代码

复制代码
import { ref, computed } from 'vue';
 
export default {
  setup() {
    const count = ref(0); // 定义一个响应式变量
    const doubleCount = computed(() => count.value * 2); // 计算属性
 
    function increment() {
      count.value++;
    }
 
    return {
      count,
      doubleCount,
      increment
    };
  }
};

在这个例子中,所有与计数相关的逻辑都被集中到 setup 函数中,代码更加清晰易读

(三)更好的类型推导

Vue3 内置了对 TypeScript 的深度支持,开发者可以直接在组件中使用类型声明,减少类型错误的发生。例如:

复制代码
import { defineComponent, ref } from 'vue';
 
interface User {
  name: string;
  age: number;
}
 
export default defineComponent({
  setup() {
    const user = ref<User>({ name: 'Alice', age: 25 });
 
    function updateAge(newAge: number) {
      user.value.age = newAge;
    }
 
    return { user, updateAge };
  }
});

通过 TypeScript,我们可以确保数据类型的正确性,提高代码的健壮性。

三、环境搭建

(一)安装 Node.js

在搭建 Vue3 开发环境之前,我们需要先安装 Node.js。Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行时环境,它允许我们在服务器端运行 JavaScript。

  1. 访问 Node.js 官方网站

  2. 根据您的操作系统(Windows、macOS 或 Linux),选择对应的安装包并下载。

  3. 安装完成后,可以通过以下命令检查是否安装成功:

    node -v
    npm -v

如果能够正确输出版本号,则说明安装成功。

(二)使用 Vite 创建 Vue3 项目

相比于传统的 Vue CLI,Vite 是一个更现代化的构建工具,具有更快的冷启动速度和热更新能力。接下来,我们将使用 Vite来创建一个 Vue3 项目。

1、全局安装 create-vue

打开终端或命令提示符,运行以下命令以全局安装 create-vue

复制代码
npm install -g create-vue

2、创建 Vue3 项目

使用以下命令创建一个新的 Vue3 项目:

复制代码
create-vue my-vue3-project

在创建过程中,系统会提示您选择一些配置选项,例如:

  • 是否使用 TypeScript?

  • 是否使用 Pinia(Vuex 的替代方案)?

  • 是否启用测试工具(如 Vitest 和 Cypress)?

您可以根据实际需求进行选择。如果不确定,可以选择默认配置。

3、进入项目目录并安装依赖

创建完成后,进入项目目录并安装依赖:

复制代码
cd my-vue3-project
npm install

4、启动开发服务器

安装完成后,运行以下命令启动开发服务器:

复制代码
npm run dev

启动成功后,终端会显示一个本地访问地址(通常是 http://localhost:5173)。打开浏览器访问该地址,即可看到项目运行效果。

四、项目结构解析

创建好项目后,我们来看一下 Vue3 项目的基本结构(以默认配置为例):

复制代码
my-vue3-project
├── node_modules/        # 项目依赖的模块
├── public/              # 静态资源,如 favicon.ico 等
├── src/                 # 项目的源代码 
│   ├── assets/          # 图片、样式等资源
│   ├── components/      # 自定义组件
│   ├── views/           # 页面视图
│   ├── App.vue          # 根组件
│   ├── main.ts          # 入口文件(TypeScript)
├── .gitignore           # Git 忽略配置
├── index.html           # 页面模板
├── package.json         # 项目依赖和脚本配置
├── tsconfig.json        # TypeScript 配置(如果选择使用 TypeScript)
└── vite.config.ts       # Vite 配置文件

关键文件说明

index.html

项目的基础 HTML 文件,所有的内容都会被注入到这个文件中。

复制代码
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Vite + Vue3</title>
</head>
<body>
  <div id="app"></div>
  <script type="module" src="/src/main.ts"></script>
</body>
</html>

main.ts

项目的入口文件,负责初始化 Vue 应用并挂载到 DOM 上。

复制代码
import { createApp } from 'vue';
import App from './App.vue';
 
createApp(App).mount('#app');

App.vue

根组件,定义了应用的整体结构。

复制代码
<template>
  <div id="app">
    <h1>Hello Vue3 with Vite</h1>
  </div>
</template>
 
<script lang="ts">
export default {
  name: 'App'
};
</script>
 
<style>
#app {
  text-align: center;
  color: #2c3e50;
}
</style>

五、总结

在本篇文章中,我们了解了 Vue3 的基础概念,并通过Vite成功搭建了开发环境。相比于传统的 Vue CLI,Vite 提供了更快的开发体验,特别适合现代前端项目的需求。接下来,我们将深入学习 Vue3 的更多特性和功能,逐步提升我们的开发能力。

文章转载自: Code_Cracke

原文链接: Vue3 基础概念与环境搭建 - Code_Cracke - 博客园

体验地址: 引迈 - JNPF快速开发平台_低代码开发平台_零代码开发平台_流程设计器_表单引擎_工作流引擎_软件架构

相关推荐
崔庆才丨静觅4 小时前
hCaptcha 验证码图像识别 API 对接教程
前端
passerby60615 小时前
完成前端时间处理的另一块版图
前端·github·web components
掘了5 小时前
「2025 年终总结」在所有失去的人中,我最怀念我自己
前端·后端·年终总结
崔庆才丨静觅5 小时前
实用免费的 Short URL 短链接 API 对接说明
前端
崔庆才丨静觅6 小时前
5分钟快速搭建 AI 平台并用它赚钱!
前端
崔庆才丨静觅6 小时前
比官方便宜一半以上!Midjourney API 申请及使用
前端
Moment6 小时前
富文本编辑器在 AI 时代为什么这么受欢迎
前端·javascript·后端
崔庆才丨静觅6 小时前
刷屏全网的“nano-banana”API接入指南!0.1元/张量产高清创意图,开发者必藏
前端
剪刀石头布啊6 小时前
jwt介绍
前端
爱敲代码的小鱼7 小时前
AJAX(异步交互的技术来实现从服务端中获取数据):
前端·javascript·ajax