VUE前端初级新手知识大全(一)

简介: 教程来源 https://app-a6nw7st4g741.appmiaoda.com/ Vue.js是轻量、易上手的渐进式前端框架,专注视图层,支持声明式编程与MVVM模式。本文系统讲解入门知识:从CDN/CLI环境搭建、核心语法(插值、指令、ref/reactive)、响应式原理,到计算属性与侦听器,助你快速构建首个Vue应用。

在当今的前端开发领域,Vue.js凭借其轻量级、易上手和渐进式的特性,已成为无数新手踏入前端世界的第一选择。无论你是刚接触编程的初学者,还是希望拓展技能栈的后端开发者,Vue都能为你打开一扇通往现代Web开发的大门。本文将为你系统梳理Vue.js的初级入门知识,从核心概念到实战技巧,助你快速搭建起属于自己的第一个Vue应用。
f7970d76-1020-47b3-a1fa-8c8d925039bb.png

一、初识Vue

1.1 什么是Vue.js?
Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架。与Angular或React等大型框架不同,Vue被设计为可以自底向上逐层应用——这意味着你可以根据项目需求,灵活决定使用Vue的多少特性。

Vue的核心库只关注视图层,不仅易于上手,还便于与第三方库或现有项目整合。当你需要构建更复杂的单页应用时,Vue也能通过配套的工具链提供全面支持。

Vue的核心优势:

轻量高效:采用虚拟DOM,优化渲染性能

易于上手:简洁的API设计,丰富的官方文档

渐进式架构:可根据项目规模选择性使用特性

生态系统丰富:路由、状态管理、构建工具一应俱全

1.2 命令式 vs 声明式:理解Vue的编程思维
在学习Vue之前,理解其背后的编程范式至关重要。Vue采用声明式编程,这与传统的命令式编程有着本质区别。

命令式编程关注"如何做":

// 命令式:手动操作DOM
const div = document.querySelector('#app');
div.innerText = 'hello world';
div.addEventListener('click', () => { alert('ok'); });

声明式编程关注"做什么":

<!-- 声明式:描述想要的结果 -->
<div @click="alert('ok')">hello world</div>

通俗地说,命令式代码像厨师——你需要亲自洗菜、切菜、炒菜,完成每个步骤;声明式代码像顾客——你只需要告诉厨师要吃什么,剩下的交给框架处理。
1.3 Vue与MVVM模式
Vue是一个MVVM(Model-View-ViewModel)框架,理解这一模式有助于更好地掌握Vue:

Model(模型):负责数据存储,对应Vue实例中的data

View(视图):负责页面展示,对应Vue的模板

ViewModel(视图模型):负责业务逻辑处理,对应Vue实例本身

这种分离使得业务逻辑代码与视图代码完全解耦,各自职责更加清晰,后期维护也更加简单。

二、环境搭建

2.1 两种引入方式
Vue提供了灵活的使用方式,你可以根据项目需求选择:

方式一:CDN引入(适合初学者和小型项目)

<!-- 开发环境版本(包含调试工具) -->
<script src="https://cdn.jsdelivr.net/npm/vue@3/dist/vue.global.js"></script>

<!-- 生产环境版本(优化压缩) -->
<script src="https://cdn.jsdelivr.net/npm/vue@3"></script>

通过CDN引入后,你就可以在HTML文件中直接使用Vue了,无需任何构建步骤。

方式二:Vue CLI脚手架(适合中大型项目)
Vue CLI是一个基于Vue.js进行快速开发的完整系统,提供了项目脚手架、开发服务器、热模块替换、代码分割等功能。使用前需要安装Node.js环境:

# 安装Vue CLI
npm install -g @vue/cli

# 创建新项目
vue create my-vue-app

# 进入项目目录
cd my-vue-app

# 启动开发服务器
npm run serve

CLI会引导你选择项目配置,你可以根据需要选择是否使用TypeScript、路由、状态管理等特性。
2.2 开发工具推荐
对于初学者,推荐使用VS Code搭配以下插件:

Vue Language Features (Volar):Vue单文件组件支持

ESLint:代码质量检查

Prettier:代码格式化

三、Vue核心语法

3.1 第一个Vue应用
创建一个HTML文件,引入Vue后,编写最简单的Vue应用:

<!DOCTYPE html>
<html>
<head>
    <title>我的第一个Vue应用</title>
    <script src="https://cdn.jsdelivr.net/npm/vue@3/dist/vue.global.js"></script>
</head>
<body>
    <div id="app">
        <h1>{
  { message }}</h1>
        <p>当前计数:{
  { count }}</p>
        <button @click="increment">点击加1</button>
    </div>

    <script>
        const app = Vue.createApp({
            data() {
                return {
                    message: '你好,Vue世界!',
                    count: 0
                };
            },
            methods: {
                increment() {
                    this.count++;
                }
            }
        });

        app.mount('#app');
    </script>
</body>
</html>

代码解析:

{ { message }}:插值表达式,用于显示数据

data():返回数据对象,所有响应式数据定义在此

methods:定义组件方法

@click:v-on的缩写,绑定点击事件

app.mount('#app'):将Vue应用挂载到指定DOM元素
3.2 模板语法与指令
Vue提供了一系列以v-开头的指令,用于在模板中实现各种功能:
image.png
常用指令速记:
v-bind: 可缩写为 :(例如 :src="imageSrc")
v-on: 可缩写为 @(例如 @click="handleClick")
3.3 响应式数据:ref与reactive
Vue 3主推组合式API,提供了两种创建响应式数据的方式:

<div id="app">
    <h3>ref(基本类型):{
  { num }}</h3>
    <h3>reactive(对象):{
  { user.name }} - {
  { user.age }}</h3>
    <button @click="updateUser">更新用户</button>
</div>

<script>
    const app = Vue.createApp({
        setup() {
            // ref用于基本类型
            const num = Vue.ref(0);

            // reactive用于对象/数组
            const user = Vue.reactive({
                name: '张三',
                age: 25
            });

            const updateUser = () => {
                num.value++;  // ref需要 .value 访问
                user.age++;   // reactive直接访问属性
            };

            return { num, user, updateUser };
        }
    });

    app.mount('#app');
</script>

关键区别:
ref:适用于基本类型(字符串、数字、布尔值),模板中自动解包(无需.value),但在JavaScript中需要通过.value访问
reactive:适用于对象和数组,直接修改属性即可触发更新
3.4 计算属性与侦听器
计算属性(computed)用于处理复杂逻辑,并缓存结果,只有依赖变化时才重新计算:

const app = Vue.createApp({
    setup() {
        const firstName = Vue.ref('张');
        const lastName = Vue.ref('三');

        // 计算属性
        const fullName = Vue.computed(() => {
            return firstName.value + ' ' + lastName.value;
        });

        return { firstName, lastName, fullName };
    }
});

侦听器(watch)用于观察和响应数据变化,适合进行异步操作或开销较大的操作:

const app = Vue.createApp({
    setup() {
        const question = Vue.ref('');

        Vue.watch(question, (newValue, oldValue) => {
            if (newValue.includes('?')) {
                fetchAnswer();  // 异步操作
            }
        });

        return { question };
    }
});

来源:
https://app-a6nw7st4g741.appmiaoda.com/

相关文章
|
11天前
|
人工智能 安全 Linux
【OpenClaw保姆级图文教程】阿里云/本地部署集成模型Ollama/Qwen3.5/百炼 API 步骤流程及避坑指南
2026年,AI代理工具的部署逻辑已从“单一云端依赖”转向“云端+本地双轨模式”。OpenClaw(曾用名Clawdbot)作为开源AI代理框架,既支持对接阿里云百炼等云端免费API,也能通过Ollama部署本地大模型,完美解决两类核心需求:一是担心云端API泄露核心数据的隐私安全诉求;二是频繁调用导致token消耗过高的成本控制需求。
5574 13
|
19天前
|
人工智能 JavaScript Ubuntu
5分钟上手龙虾AI!OpenClaw部署(阿里云+本地)+ 免费多模型配置保姆级教程(MiniMax、Claude、阿里云百炼)
OpenClaw(昵称“龙虾AI”)作为2026年热门的开源个人AI助手,由PSPDFKit创始人Peter Steinberger开发,核心优势在于“真正执行任务”——不仅能聊天互动,还能自动处理邮件、管理日程、订机票、写代码等,且所有数据本地处理,隐私完全可控。它支持接入MiniMax、Claude、GPT等多类大模型,兼容微信、Telegram、飞书等主流聊天工具,搭配100+可扩展技能,成为兼顾实用性与隐私性的AI工具首选。
22164 118

热门文章

最新文章