重生之我在学Vue--第1天 Vue 3 基础与开发环境搭建

重生之我在学Vue–第1天 Vue 3 基础与开发环境搭建

文章目录

  • 重生之我在学Vue--第1天 Vue 3 基础与开发环境搭建
    • 前言
    • 一、Vue 3 的特点与核心概念
    • 二、搭建开发环境
      • 1. 安装 Node.js
      • 2. 使用 Vite 创建 Vue 3 项目
        • 创建项目
        • 进入项目目录并安装依赖
        • 启动开发服务器
      • 3. 理解项目结构
    • 三、编写第一个 Vue 组件
      • 1. 修改 `App.vue`
      • 2. 代码解析
      • 3. 查看效果
    • 四、总结
    • 五、明日预告
    • 五、明日预告

前言

在现代前端开发中,Vue.js 已经成为一款备受欢迎的框架,尤其是 Vue 3 的推出,让开发者能够以更高效、更优雅的方式构建用户界面。今天是学习 Vue 3 的第1天,我们将从零开始,搭建开发环境,了解 Vue 3 的核心概念,并编写第一个简单的组件。

Vue3 官方中文文档传送点: 简介 | Vue.js

Vue3 的中文官方文档学习笔记很全还有练习场,推荐去官网学习

Vue前端成仙之路:Vue 前端成仙之路_野生的程序媛的博客-CSDN博客

GO后端成神之路:Go 后端成神之路_野生的程序媛的博客-CSDN博客


一、Vue 3 的特点与核心概念

在正式开始之前,我们需要了解 Vue 3 的一些核心特点和概念:

  1. Composition API

    • Vue 3 引入了 Composition API,这种写法相比 Options API 更加灵活,尤其在复杂项目中更易于代码复用和逻辑组织。
    • 通过 setup() 函数,你可以将逻辑集中在一个地方,而不是分散在多个选项中(如 datamethods 等)。
  2. 性能优化

    • Vue 3 使用了基于 Proxy 的响应式系统,相比 Vue 2 的 Object.defineProperty,性能更高。
    • 支持 Tree-shaking,未使用的功能不会被打包到生产代码中。
  3. 更好的 TypeScript 支持

    • Vue 3 的设计完全考虑了 TypeScript,可以更自然地使用类型检查和类型推导。
  4. 新特性

    • 新增的 <Fragment><Teleport><Suspense> 等功能,扩展了 Vue 的应用场景。

二、搭建开发环境

1. 安装 Node.js

Vue 3 的开发需要依赖 Node.js 环境。首先,确保你已经安装了 Node.js(建议版本 16+)。可以通过以下命令检查版本:

node -v
npm -v

如果未安装,可以前往 Node.js 官网 下载并安装。

安装教程传送点:2024最新版Node.js下载安装及环境配置教程【保姆级】_nodejs下载-CSDN博客


2. 使用 Vite 创建 Vue 3 项目

Vite 是 Vue 3 官方推荐的构建工具,它启动速度快、配置简单,非常适合现代前端开发。

Vite 官方中文教程:为什么选 Vite | Vite 官方中文文档

创建项目

在终端中运行以下命令:

# 通过 npm 创建项目
npm create vite@latest my-vue3-app# 或者使用 yarn
yarn create vite my-vue3-app

在提示中选择以下选项:

  • Project name:输入项目名称(如 my-vue3-app)。
  • Framework:选择 Vue
  • Variant:选择 JavaScriptTypeScript(根据需求)。
进入项目目录并安装依赖
cd my-vue3-app
npm install
启动开发服务器
npm run dev

打开浏览器,访问 http://localhost:5173,你会看到一个默认的 Vue 3 项目页面。


3. 理解项目结构

打开项目目录,你会看到以下重要文件和文件夹:

  • src/:存放源代码的文件夹。
    • main.js:项目的入口文件,负责初始化 Vue 应用。
    • App.vue:根组件,所有页面组件的父组件。
  • index.html:项目的 HTML 模板文件。
  • vite.config.js:Vite 的配置文件。

三、编写第一个 Vue 组件

接下来,我们将编写一个简单的 Vue 组件,展示“Hello, Vue 3!”。

1. 修改 App.vue

打开 src/App.vue 文件,将内容替换为以下代码:

<template><div id="app"><h1>{{ message }}</h1><button @click="increment">点击次数:{{ count }}</button></div>
</template><script>
import { ref } from 'vue';export default {setup() {const message = ref('Hello, Vue 3!');const count = ref(0);const increment = () => {count.value++;};return {message,count,increment,};},
};
</script><style>
#app {font-family: Avenir, Helvetica, Arial, sans-serif;text-align: center;margin-top: 50px;
}
button {padding: 10px 20px;font-size: 16px;margin-top: 20px;cursor: pointer;
}
</style>

2. 代码解析

  • 模板部分

    • 使用 {{ message }} 进行数据绑定,显示动态内容。
    • 使用 @click 绑定点击事件,触发 increment 函数。
  • 逻辑部分

    • import { ref } from 'vue';
      • 引入 Vue 3 的 ref 函数,用于创建响应式数据。
    • const message = ref('Hello, Vue 3!');
      • 定义一个响应式变量 message,初始值为 "Hello, Vue 3!"
    • const count = ref(0);
      • 定义一个响应式变量 count,初始值为 0
    • const increment = () => { count.value++; };
      • 定义一个方法 increment,每次调用时将 count 的值加 1。
      • 注意:ref 创建的响应式变量需要通过 .value 访问和修改。
    • return { message, count, increment };
      • 将变量和方法返回给模板,使其在模板中可以直接使用。
  • 样式部分

    • #app
      • 设置全局字体样式和页面布局。
    • button
      • 定义按钮的样式,包括内边距、字体大小、上边距和鼠标样式。

3. 查看效果

保存文件后,浏览器会自动刷新,你会看到一个按钮和动态计数器。点击按钮,计数会递增。
在这里插入图片描述


四、总结

通过第一天的学习,我们完成了以下内容:

  1. 了解了 Vue 3 的核心特点和概念。
  2. 使用 Vite 快速搭建了 Vue 3 的开发环境。
  3. 编写了一个简单的 Vue 组件,初步体验了 Composition API 的使用。

五、明日预告

明天,我们将深入学习 Vue 3 的 Composition API 和响应式系统,掌握 refreactivecomputedwatch 等核心功能,进一步完善我们的项目。

搭建了 Vue 3 的开发环境。
3. 编写了一个简单的 Vue 组件,初步体验了 Composition API 的使用。


五、明日预告

明天,我们将深入学习 Vue 3 的 Composition API 和响应式系统,掌握 refreactivecomputedwatch 等核心功能,进一步完善我们的项目。

学习 Vue 3 的旅程才刚刚开始,继续加油吧! 🚀

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/487886.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【机器学习】【分子属性预测】——python读取.tar.gz文件(以OC22数据集为例)

1 Pre-knowledge .tar.gz 文件是一种常见的压缩文件格式&#xff0c;它实际上是两种压缩格式的组合&#xff1a;.tar 和 .gz。 .tar&#xff1a;这是“tape archive”的缩写&#xff0c;是一种打包&#xff08;archiving&#xff09;文件格式&#xff0c;用于将多个文件和目录…

游戏引擎学习第35天

开场介绍 今天的任务是继续改进一个虚拟的瓦片地图系统&#xff0c;使其适合处理更大的世界。我们希望这个系统能管理大范围的游戏世界&#xff0c;其中包含按需存储的小区域。昨天&#xff0c;我们介绍了“内存区域”的概念&#xff0c;用于管理持久性存储。我们计划今天继续…

如何在 Ubuntu 22.04 上安装和使用 Apache Kafka

简介 Apache Kafka是一个高性能、低延迟的分布式流处理平台&#xff0c;广泛用于构建实时数据管道和流式应用。本文将指导你如何在Ubuntu 22.04系统上快速部署Apache Kafka&#xff0c;让你体验到Kafka在处理大规模实时数据流方面的强大能力。通过本教程&#xff0c;你将学会如…

图像边缘检测原理和常用检测算子及MATLAB实现

一、边缘和边缘检测的概念 图像边缘是指图像中灰度值发生急剧变化的地方&#xff0c;这些变化通常对应于图像中物体的轮廓、边界或纹理的突变处。在数字图像处理中&#xff0c;边缘是图像的一个重要特征&#xff0c;它包含了关于物体形状、位置和大小等关键信息。 边缘检测是数…

html|本地实现浏览器m3u8播放器,告别网络视频卡顿

前言 网络上经常是以m3u8文件传输视频流的 &#xff0c;但是有时网络慢往往导致视频播放卡顿。于是我在想能不能先下载然后再播放呢&#xff1f;于是尝试下载然后实现本地播放m3u8视频。 正文 1.找到网络视频流的m3u8连接 一般在浏览器按F12就可以看到有请求视频流的连接。 …

架构15-服务网格

零、文章目录 架构15-服务网格 1、透明通信的涅槃 &#xff08;1&#xff09;服务网格 概念 服务网格是一种处理程序间通信的基础设施&#xff0c;主要由数据平面和控制平面组成。它通过边车代理和控制程序管理程序间的通信&#xff0c;弥补了容器编排系统对分布式应用细粒…

算法日记 46 day 图论(并查集)

题目&#xff1a;冗余连接 108. 冗余连接 (kamacoder.com) 题目描述 有一个图&#xff0c;它是一棵树&#xff0c;他是拥有 n 个节点&#xff08;节点编号1到n&#xff09;和 n - 1 条边的连通无环无向图&#xff08;其实就是一个线形图&#xff09;&#xff0c;如图&#xff…

如何在x86模拟器和鸿蒙API9如何使用MQTT模块ohos_mqtt

目录 引言 安装失败的原因 如何编译so文件的x86_64版本 下载源代码 安装NDK 代码编译 安装MQTT软件包 避免MQTT软件包自动升级 设置libs 客户端程序的编写 运行测试 结语 参考文献 引言 在上周的博客&#xff08;如何在鸿蒙API9和x86模拟器中使用MQTT-CSDN博客&am…

Vant UI Axure移动端元件库:提升移动端原型设计效率

UI框架的选择对于提升开发效率和用户体验至关重要。Vant UI&#xff0c;作为一款基于Vue.js的轻量、可靠的移动端组件库&#xff0c;自2017年开源以来&#xff0c;凭借其丰富的组件库、良好的性能以及广泛的兼容性&#xff0c;在移动端开发领域崭露头角&#xff0c;赢得了众多开…

Spring——SpringBean初始接口

摘要 本文详细介绍了Spring框架中SpringBean的初始化接口和注解&#xff0c;包括BeanPostProcessor接口、InitializingBean接口和PostConstruct注解。文章解释了这些接口和注解的原理、作用、适用场景&#xff0c;并提供了示例代码。最后&#xff0c;对比了不同SpringBean初始…

ECharts柱状图-阶梯瀑布图,附视频讲解与代码下载

引言&#xff1a; 在数据可视化的世界里&#xff0c;ECharts凭借其丰富的图表类型和强大的配置能力&#xff0c;成为了众多开发者的首选。今天&#xff0c;我将带大家一起实现一个柱状图图表&#xff0c;通过该图表我们可以直观地展示和分析数据。此外&#xff0c;我还将提供…

ZZCMS2023存在跨站脚本漏洞(CNVD-2024-44822、CVE-2024-44818)

ZZCMS是一款用于搭建招商网站的CMS系统&#xff0c;由PHP语言开发&#xff0c;可快速搭建&#xff1a;医药招商、保健品招商、化妆品招商、农资招商、孕婴童招商、酒类副食类等招商网站。 国家信息安全漏洞共享平台于2024-11-14公布其存在跨站脚本漏洞。 漏洞编号&#xff1a…

【OpenCV】Canny边缘检测

理论 Canny 边缘检测是一种流行的边缘检测算法。它是由 John F. Canny 在 1986 年提出。 这是一个多阶段算法&#xff0c;我们将介绍算法的每一个步骤。 降噪 由于边缘检测易受图像中的噪声影响&#xff0c;因此第一步是使用 5x5 高斯滤波器去除图像中的噪声。我们在前面的章…

2024-2025关于华为ICT大赛考试平台常见问题

一、考生考试流程 第一步&#xff1a;收到正式考试链接后点击考试链接并登录&#xff1b; 第二步&#xff1a;请仔细阅读诚信考试公约&#xff0c;阅读完成后勾选“我已阅读”&#xff0c;并点击确定&#xff1b; 第三步&#xff1a;上传身份证人像面进行考前校验&#xff0…

QT配置boost库

1. 下载解压 boost官网 boost1.86 2. QT.pro添加路径&#xff1a; CONFIG c17 INCLUDEPATH “D:\boost_1_86_0” QT core guigreaterThan(QT_MAJOR_VERSION, 4): QT widgetsCONFIG c17DEFINES QT_DEPRECATED_WARNINGS INCLUDEPATH "D:\boost_1_86_0"…

利用Java爬虫MinC根据ID获取商品详情的完整指南

在当今数字化时代&#xff0c;获取商品详情数据对于市场分析、价格监控和竞争对手分析至关重要。Java作为一种强大且广泛使用的编程语言&#xff0c;非常适合开发复杂的爬虫系统。本文将详细介绍如何利用Java编写爬虫程序来根据商品ID获取商品详情&#xff0c;并提供完整的代码…

智能租赁管理系统助力规范化住房租赁市场提升用户体验

内容概要 在当今的住房租赁市场中&#xff0c;智能租赁管理系统应运而生&#xff0c;为房东和租客带来了前所未有的便利。这套系统就像一位全能助手&#xff0c;将租赁信息、监管机制以及在线签约功能集成在一起&#xff0c;让整个过程变得流畅而高效。换句话说&#xff0c;您…

Java版-图论-最小生成树-Prim算法

实现描述 如图&#xff1a; Prim算法的基本思想是从一个顶点开始&#xff0c;逐步构建最小生成树。具体步骤如下&#xff1a; 随机选取一个顶点作为起始点&#xff0c;并将其加入最小生成树的集合中。从该顶点出发&#xff0c;选择一条边连接到其他未被访问的顶点中的最小权…

科技云报到:数智化转型风高浪急,天翼云如何助力产业踏浪而行?

科技云报到原创。 捷径消亡&#xff0c;破旧立新&#xff0c;是今年千行百业的共同底色。 穿越产业周期&#xff0c;用数字化的力量重塑企业经营与增长的逻辑&#xff0c;再次成为数字化技术应用的主旋律&#xff0c;也是下一阶段产业投资的重点。 随着数字化转型行至“深水区…

数据清洗代码:缺失值,异常值,离群值Matlab处理

目录 基本介绍程序设计参考资料基本介绍 一、过程概述 本过程适用于处理SCADA系统采集到的数据,以及具有类似需求的数据集。处理步骤包括缺失值处理、异常值处理和离群值处理,旨在提升数据质量,增强数据的相关性,同时保持数据的原始特征和随机性。 二、缺失值处理 对于SC…