Vue.js 环境搭建与基础概念
- 关键点
- Vue.js 是一个简单易用的前端框架,适合初学者快速上手。
- 搭建开发环境需要安装 Node.js 和 npm/Yarn,推荐使用最新 LTS 版本。
- Vue CLI 是官方工具,可快速创建项目并提供开发服务器。
- Vue.js 基于 MVVM 模式,响应式系统是其核心特性,驱动数据与视图的自动同步。
为什么需要环境搭建?
要开发 Vue.js 应用,首先需要一个前端开发环境,包括 Node.js(运行 JavaScript 的环境)和 npm 或 Yarn(管理依赖的工具)。Vue CLI 帮助快速生成项目结构,省去手动配置的麻烦。
核心概念简介
Vue.js 采用 MVVM(Model-View-ViewModel)模式,数据(Model)通过 ViewModel 与视图(View)绑定。响应式系统让数据变化自动更新界面,无需手动操作 DOM。
接下来做什么?
本文将引导你安装必要工具、创建第一个 Vue 项目,并理解 Vue.js 的核心概念,为后续学习打下基础。
从零基础到最佳实践:Vue.js 系列(1/10):《环境搭建与基础概念》
欢迎踏上 Vue.js 的学习之旅!Vue.js 是一个轻量、灵活且强大的前端框架,以其简单易学和高效开发而闻名。本系列专栏共 10 篇,从零基础到进阶技巧,再到项目实战,带你全面掌握 Vue.js。本文是第一篇,聚焦于环境搭建和基础概念,为你开启 Vue.js 开发之门。我们将以轻松、易懂的语言,结合代码示例,详细讲解如何准备开发环境、创建项目,并理解 Vue.js 的核心机制。
1. 前端开发环境搭建
在开始 Vue.js 开发之前,我们需要搭建一个前端开发环境,包括安装 Node.js 和包管理工具(npm 或 Yarn)。这些工具是现代前端开发的基石,帮助我们运行 JavaScript 代码和管理项目依赖。
1.1 安装 Node.js
Node.js 是一个 JavaScript 运行时环境,允许在浏览器之外运行 JavaScript 代码。它是 Vue.js 开发的基础,因为许多工具(如 Vue CLI)依赖 Node.js。
-
步骤:
- 访问 Node.js 官网,下载最新 LTS(长期支持)版本(截至 2025 年 5 月,推荐版本为 20.11.0 或更高)。
- 按照安装向导完成安装,支持 Windows、macOS 和 Linux。
- 打开终端(Windows 使用命令提示符或 PowerShell,macOS/Linux 使用终端),运行以下命令验证安装:
如果返回版本号(如node -v
v20.11.0
),说明安装成功。
-
注意:选择 LTS 版本以确保稳定性和兼容性。如果您需要管理多个 Node.js 版本,可以使用 nvm(Node Version Manager)。
1.2 安装包管理工具(npm 或 Yarn)
Node.js 自带 npm(Node Package Manager),用于安装和管理项目依赖。Yarn 是另一种流行的包管理工具,以速度快和一致性强著称。
-
npm:无需额外安装,随 Node.js 提供。验证版本:
npm -v
-
Yarn(可选):如果您更喜欢 Yarn,可以通过 npm 全局安装:
npm install -g yarn
验证安装:
yarn -v
-
npm vs Yarn:npm 是默认选择,易于上手;Yarn 提供更快的安装速度和离线缓存功能。两者功能类似,选择任一即可。
1.3 使用 nvm 管理 Node.js 版本(可选)
如果您在不同项目中需要使用不同版本的 Node.js,nvm 是一个方便的工具,可以轻松切换版本。
- 安装 nvm:
- macOS/Linux:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
- Windows:下载并安装 nvm-windows。
- macOS/Linux:
- 使用 nvm:
- 安装特定版本:
nvm install 20.11.0
- 切换版本:
nvm use 20.11.0
- 查看已安装版本:
nvm list
- 安装特定版本:
2. Vue CLI 安装与项目初始化
Vue CLI 是 Vue.js 官方的命令行工具,用于快速创建和管理 Vue 项目。它提供预配置的项目结构、开发服务器和构建工具,极大简化开发流程。
2.1 安装 Vue CLI
确保 Node.js 和 npm 已安装,然后运行以下命令全局安装 Vue CLI:
npm install -g @vue/cli
-
验证安装:
vue --version
如果返回版本号(如
@vue/cli@5.0.8
),说明安装成功。 -
注意:Vue CLI 4.x 和 5.x 要求 Node.js 版本 8.9 或更高,推荐使用 10.x 或以上。如果您需要 Vue CLI 2.x 的旧功能,可以安装桥接工具:
npm install -g @vue/cli-init
2.2 创建新项目
使用以下命令创建一个新 Vue 项目:
vue create my-project
-
配置选项:运行后,Vue CLI 会提示您选择项目配置:
- 默认预设:包含基本配置,适合快速开始。
- 手动选择功能:允许选择 Vue 版本(2 或 3)、路由(Vue Router)、状态管理(Pinia 或 Vuex)、CSS 预处理器(如 Sass)、代码检查(ESLint)等。
-
快速创建:若不想手动配置,可使用默认配置:
vue create my-project --default
-
图形界面(可选):Vue CLI 提供图形界面,运行以下命令:
vue ui
这会打开浏览器,显示一个可视化界面,引导您完成项目创建。
2.3 启动开发服务器
创建项目后,进入项目目录:
cd my-project
安装依赖:
npm install
启动开发服务器:
npm run serve
- 访问项目:浏览器会自动打开(通常为
http://localhost:5173
),显示 Vue.js 的欢迎页面。 - 项目结构:新建的项目包含以下关键文件:
src/main.js
:项目入口文件。src/App.vue
:根组件。src/components/
:存放子组件。package.json
:项目依赖和脚本配置。
Vue 项目结构示例
以下是 vue create
生成的典型项目结构:
my-project/
├── node_modules/ # 项目依赖
├── public/ # 静态资源
│ ├── index.html # 主 HTML 文件
│ └── favicon.ico
├── src/ # 源代码
│ ├── assets/ # 静态资源(如图片、CSS)
│ ├── components/ # Vue 组件
│ ├── App.vue # 根组件
│ └── main.js # 入口文件
├── package.json # 项目配置和依赖
└── README.md # 项目说明
3. Vue.js 核心概念:MVVM 与响应式原理
Vue.js 的设计基于 MVVM(Model-View-ViewModel)模式,并以其强大的响应式系统为核心,实现了数据与视图的自动同步。
3.1 MVVM 模式
MVVM 是一种软件架构模式,将应用程序分为三个部分:
- Model:数据模型,包含业务逻辑和数据(如用户信息、商品列表)。
- View:用户界面,显示给用户(如 HTML 模板)。
- ViewModel:连接 Model 和 View,处理数据绑定和用户交互。
在 Vue.js 中,组件的 data
或 setup
函数充当 ViewModel,管理响应式数据。例如:
<template><div><h1>{{ message }}</h1><button @click="updateMessage">更新消息</button></div>
</template><script>
export default {data() {return {message: 'Hello, Vue!'}},methods: {updateMessage() {this.message = 'Welcome to Vue.js!';}}
}
</script>
在这个例子中,data
中的 message
是 ViewModel 的一部分,与模板中的 {{ message }}
绑定。当 message
变化时,视图自动更新。
3.2 响应式原理
Vue.js 的响应式系统是其核心特性,确保数据变化自动触发视图更新。其工作原理基于依赖追踪和发布-订阅模式:
- 依赖追踪:当组件渲染时,Vue.js 记录模板中使用的响应式数据。
- 发布-订阅:当这些数据变化时,Vue.js 通知依赖它们的组件重新渲染。
在 Vue 3 中,响应式系统通过以下 API 实现:
ref
:用于单个值的响应式引用。reactive
:用于创建响应式对象或数组。
示例:
<template><div><p>计数: {{ count }}</p><p>状态: {{ state.message }}</p><button @click="increment">增加</button></div>
</template><script setup>
import { ref, reactive } from 'vue';const count = ref(0);
const state = reactive({ message: 'Hello, Vue!' });function increment() {count.value++;state.message = `Count is now ${count.value}`;
}
</script>
- ref:
count
是一个响应式引用,访问或修改时使用.value
。 - reactive:
state
是一个响应式对象,属性变化会触发视图更新。
3.3 计算属性与侦听器
- 计算属性:基于其他响应式数据计算值,依赖变化时自动更新。
- 侦听器:在数据变化时执行自定义逻辑。
示例:
<template><div><p>价格: {{ price }}</p><p>折扣价: {{ discountedPrice }}</p><button @click="price += 10">增加价格</button></div>
</template><script setup>
import { ref, computed, watch } from 'vue';const price = ref(100);
const discount = ref(0.1);const discountedPrice = computed(() => price.value * (1 - discount.value));watch(price, (newPrice) => {console.log(`价格变为: ${newPrice}`);
});
</script>
- 计算属性:
discountedPrice
基于price
和discount
计算。 - 侦听器:
watch
监听price
变化,记录日志。
4. 实际应用场景
- 环境搭建:Node.js 和 npm/Yarn 是前端开发的标配,Vue CLI 简化了项目初始化,适合快速原型开发。
- MVVM 模式:在表单、列表等场景中,MVVM 模式让数据与视图分离,提高代码可维护性。
- 响应式系统:用于动态更新界面,如实时显示用户输入、计算价格或更新状态。
5. 最佳实践
实践 | 描述 |
---|---|
使用 LTS 版本 | 选择 Node.js LTS 版本以确保稳定性和兼容性。 |
选择合适的包管理器 | npm 适合简单项目,Yarn 适合需要高性能或离线缓存的场景。 |
利用 Vue CLI 图形界面 | 使用 vue ui 简化项目配置,适合初学者。 |
理解响应式数据 | 使用 ref 和 reactive 管理数据,确保视图与数据同步。 |
6. 2025 年趋势
截至 2025 年 5 月,Vue.js 3 是主流版本,推荐使用 Vite 替代 Vue CLI,因为 Vite 提供更快的构建速度和现代化开发体验。然而,Vue CLI 仍适合需要稳定配置的项目。响应式系统在 Vue 3 中更加灵活,Composition API 成为首选。
7. 总结
本文介绍了如何搭建 Vue.js 开发环境,包括安装 Node.js、npm/Yarn 和 Vue CLI,并创建第一个项目。我们还深入探讨了 Vue.js 的 MVVM 模式和响应式原理,结合代码示例展示了如何使用 ref
、reactive
、计算属性和侦听器。这些基础知识为后续学习组件、路由和状态管理奠定了基础。希望本文能帮助你顺利开启 Vue.js 之旅!