零基础入门 Vue.js 开发指南
一、开篇:什么是 Vue.js?它可以做什么?

你是不是经常在网上看到“Vue”、“React”、“Angular”这些词,却完全不知道它们是什么?别担心,今天我们要学习的主角 —— Vue.js(简称 Vue),就是一款让前端开发更简单、高效的工具。
Vue.js 是什么?
你可以把 Vue 理解成一个“建造网页房子”的工具包。它不是房子本身,而是帮助你更快、更规范地搭建房子的铲子、锤子和图纸。有了 Vue,你可以轻松构建交互性强、界面好看的网站或应用。
Vue 可以用来做什么?
- 做响应式的网站界面(用户点击按钮后页面能立刻变化)
- 构建单页应用(SPA),比如我们常用的知乎、B站这类网站
- 提高代码组织性,让项目更容易维护
- 快速开发小型到大型的 Web 应用
总结一句话:Vue 是帮你写出更好看、更好用网页的利器。
二、环境准备:从零开始搭建你的 Vue 开发环境

要开始写 Vue 项目,你需要先准备好“厨房” —— 开发环境。
步骤 1:安装 Node.js 和 npm
Node.js 是 JavaScript 的运行环境,npm 是它的包管理器,几乎所有的现代前端开发都离不开这两个工具。
👉 访问官网 https://nodejs.org
选择 “LTS” 版本下载安装即可。
安装完成后,在命令行中输入:
node -v
npm -v
如果有版本号输出,说明安装成功。
步骤 2:安装 Vue CLI(脚手架)
Vue 官方提供了一个叫做 Vue CLI 的工具,可以快速创建项目结构。
在终端执行:
npm install -g @vue/cli
等安装完成,输入:
vue --version
如果出现版本号,恭喜你,环境已经准备好啦!
步骤 3:创建第一个 Vue 项目
接下来,我们来创建一个简单的 Vue 项目试试水。
vue create hello-vue
然后选择默认配置(按方向键回车确认)。等待一会儿后,项目就创建好了。
进入项目目录并启动:
cd hello-vue
npm run serve
这时浏览器会自动打开地址 http://localhost:8080,你能看到 Vue 的欢迎页面。
三、核心概念:通俗讲解 Vue 的关键知识点


现在我们已经有了一个 Vue 项目,但光看得见还不够。我们要理解它是怎么运作的。
1. Vue 实例:一切的起点
在 Vue 中,根实例就像整栋房子的主控制器,控制着整个页面的行为。
看看 src/main.js 文件中的内容:
import Vue from 'vue'
import App from './App.vue'
new Vue({
render: h => h(App)
}).$mount('#app')
这段代码创建了一个新的 Vue 实例,并告诉它去操作 <div id="app"> 这个区域。
✨ 小知识:$mount('#app') 表示把这个 Vue 实例挂载到 id 为 app 的元素上。
2. 模板语法:数据绑定
还记得 HTML 吗?在 Vue 中,我们可以把数据直接显示在页面上。
新建一个文件 Hello.vue,写下如下代码:
<template>
<div>
<h1>你好,{{ name }}</h1>
<p>当前时间是:{{ now }}</p>
</div>
</template>
<script>
export default {
data() {
return {
name: "小明",
now: new Date().toLocaleTimeString()
}
}
}
</script>
在这段代码中:
data()函数返回的是数据对象{{ }}是 Vue 的插值表达式,用于显示数据
这样就可以让页面随着数据的变化而自动更新,无需手动刷新。
3. 指令:控制 DOM 的魔法钥匙
指令是 Vue 提供的一组特定功能,前缀是 v-,例如:
v-if / v-show:条件渲染
<p v-if="isVisible">我有条件地显示</p>
<p v-show="isShowed">我也能显示,不过方式不同</p>
区别:
v-if条件不成立时,元素不会出现在 HTML 中v-show条件不成立时,元素只是隐藏起来(通过 CSS 控制)
v-on:监听事件
<button v-on:click="sayHello">点我打招呼</button>
对应的 js 逻辑:
methods: {
sayHello() {
alert('Hello Vue!')
}
}
你也可以简写成:@click="sayHello"
v-model:双向数据绑定
适合表单控件,如文本框、复选框等:
<input v-model="message" placeholder="输入内容">
<p>你输入的是:{{ message }}</p>
这样输入框和变量之间会实时同步。
四、实战项目:做一个简易的待办事项列表(Todo List)

学完基本概念之后,我们来做个小项目练练手吧!这个待办事项列表包括添加任务、删除任务两个功能。
第一步:修改模板文件
打开 src/App.vue 文件,将内容替换为如下:
<template>
<div id="app">
<h1>我的待办清单</h1>
<!-- 输入框 -->
<input v-model="newTask" @keyup.enter="addTask" placeholder="输入新任务">
<button @click="addTask">添加</button>
<!-- 列表 -->
<ul>
<li v-for="(task, index) in tasks" :key="index">
{{ task }}
<button @click="removeTask(index)">删除</button>
</li>
</ul>
</div>
</template>
第二步:添加数据与方法
继续完善 <script> 部分:
<script>
export default {
data() {
return {
newTask: '',
tasks: []
}
},
methods: {
addTask() {
if (this.newTask.trim()) {
this.tasks.push(this.newTask)
this.newTask = '' // 清空输入框
}
},
removeTask(index) {
this.tasks.splice(index, 1)
}
}
}
</script>

第三步:添加样式(可选)
加上一点样式让它看起来更清爽:
<style scoped>
#app {
max-width: 400px;
margin: 20px auto;
padding: 20px;
border: 1px solid #ccc;
border-radius: 5px;
}
input {
width: 70%;
padding: 6px;
}
button {
padding: 6px 10px;
}
ul {
list-style: none;
padding-left: 0;
}
li {
margin-top: 10px;
}
</style>
保存后刷新浏览器,你应该能看到一个可以输入任务并删除的任务清单了!
五、常见问题解答(FAQ)
很多新手朋友在刚接触 Vue 时总会遇到一些问题,下面是一些常见的问题和解决办法。
1. 数据变了为什么页面没更新?
✅ 解决方案:
确保你在 data() 中声明了变量,并通过 Vue 提供的方法来修改(不要直接改数组长度、对象属性)。
2. 添加新数据,页面没反应怎么办?
✅ 解决方案:
使用 this.$set() 方法,或者改用数组的变异方法,例如 push、pop、splice。
3. 如何调试 Vue 页面?
✅ 解决方案: 安装 Vue Devtools 浏览器插件(Chrome/Firefox),它可以查看组件树、响应式数据等信息,非常方便!
4. 代码报错看不懂怎么办?
✅ 解决方案: 先查看浏览器控制台的报错信息,注意红色字体。大部分时候错误提示已经告诉你哪里出错了。
六、学习建议:下一步该学什么?
恭喜你完成了第一个 Vue 小项目!这是你前端之路迈出的一大步!
推荐进一步学习的内容:
| 学习模块 | 内容简介 |
|---|---|
| 组件通信 | 父子组件如何传值(props / $emit) |
| Vue Router | 用于构建多页面应用,实现跳转 |
| Vuex | 大型应用状态管理工具 |
| 生命周期钩子 | created/mounted等函数的作用 |
| axios 请求数据 | 向后端发起 HTTP 请求获取数据 |
| Vue 3 + Composition API | Vue 最新版特性,功能更强大 |
学习资源推荐:
- Vue 官方文档(中文)
- Vue Mastery 视频课程(英文+中文字幕)
- B站搜索“Vue入门”,有许多优秀免费视频教程
结语
Vue 是现代前端开发非常重要的一环,掌握它不仅能让你做出更好的项目,也能为你走向专业开发者打下坚实的基础。
记住一句话:“做中学,错中进。” 不怕犯错,多动手写代码才是成长的关键。
祝你一路顺利,早日成为 Vue 大神!🚀

评论 0