26.6.3Vue笔记

助你上手Vue3全家桶之Vue3教程 这些内容是博主在学习过程中记录下来的,有一些不重要的点就跳过了,需要时自行查询文档。其实V2到V3的学习成本不高,熟悉V2的话,看完这篇文章就可以上手V3。Vue3官网在线源码编译地址定义一个组件可以向其父组件触发的事件//在子组件中nameprops{msg{typeString,default''}},emits}return{father}}}//在父组件中。... 阅读详情

6.3

【内容概要】

Vue Cli脚手架构建项目,

img

Babel:可以把ES6的新语法转换成es5以下的来适应低版本的浏览器

Linter 格式化构建工具,严格要求规范代码,多输入一个空格都会报错,但是一般大家都会选上

Vite构建工具:推荐

Vue-Cli:传统脚手架,基于Webpack vue create [你的项目]

ts离不开Lint,代码检查的

Prettier

ESLint:查找js / ts代码问题并提供修复建议的工具

---------------------------笔记--------------------------

项目建议遵循Vue3的组合式API(Composition API)

在 Vue 3 ,使用 createApp 执行 Vue 的初始化,另外不管是 Vue 生态里的东西,还是外部插件、 UI 框架,统一都是由 use() 进行激活,非常统一和简洁:

import { createApp } from 'vue' import App from './App.vue' import router from './router' import store from './store' import pluginA from 'pluginA' import pluginB from 'pluginB' import pluginC from 'pluginC'

createApp(App) .use(store) .use(router) .use(pluginA) .use(pluginB) .use(pluginC) .mount('#app')

  • 全新的 setup 函数,关系到组件的生命周期和渲染等问题

  • 写 TypeScript 组件离不开的 defineComponent API

setup 的含义

Vue 3 的 Composition API 系列里,推出了一个全新的 setup 函数,它是一个组件选项,在创建组件之前执行,一旦 props 被解析,便作为组合式 API 的入口点。

TIP

说的通俗一点,就是在使用 Vue 3 生命周期的情况下,整个组件相关的业务代码,都可以放在 setup 里执行。

因为在 setup 之后,其他的生命周期才会被启用(点击了解:组件的生命周期)。

import { createApp } from "vue";     // 1. 从Vue库拿来"创建应用"的工具
import App from "./App.vue";          // 2. 导入根组件(最外层积木)
import router from "./router";        // 3. 导入路由(管理页面跳转)
import Antd from "ant-design-vue";    // 4. 导入UI组件库(现成的好看积木)
import "ant-design-vue/dist/reset.css"; // 5. 组件库的样式
​
createApp(App)   // 以 App.vue 为根,创建整个应用
  .use(router)   // 安装路由插件
  .use(Antd)     // 安装UI组件库插件
  .mount("#app") // 把整个应用挂载到 HTML 里 id="app" 的那个 div 上

App.vue 是所有积木的最外层容器。关键是这两个标签:

  • <router-link> — 相当于 <a> 链接,但不会刷新页面,只切换内容

  • <router-view /> — 这是一个占位符,当用户访问不同路由,对应的页面组件就会显示在这里

约定俗成的目录分工:

目录放什么
views/页面级组件,对应一个路由,比如"首页"、"用户详情页"
components/可复用的小积木,比如"按钮"、"卡片"、"表单项"

如何在一个组件里使用另一个组件?

看 HomeView.vue 是怎么使用 HelloWorld.vue 的:

<template>
  <div class="home">
    <!-- 3. 像普通 HTML 标签一样使用 -->
    <hello-world msg="欢迎来到首页" />
  </div>
</template>
​
<script setup lang="ts">
// 1. 导入组件
import HelloWorld from '@/components/HelloWorld.vue'
// 2. 用了 <script setup>,导入后不需要额外注册,直接在 template 用
</script>

.vue 文件的三段式结构(必须记住)

每个 .vue 文件都由三段组成:

<template>
  <!-- 这里写 HTML 结构 — "长什么样" -->
</template>
​
<script setup lang="ts">
  // 这里写逻辑 — "怎么工作"
  // setup 是 Vue 3 的写法,比 Vue 2 简洁很多
</script>
​
<style scoped>
  /* 这里写 CSS 样式 — "什么颜色、什么布局" */
  /* scoped 表示这个样式只作用于当前组件,不会影响其他组件 */
</style>

index.html <div id="app">
    ↓  mount
main.ts → createApp → 装好所有插件
    ↓
App.vue → 导航栏 + <router-view>
    ↓  根据 URL 决定显示哪个
views/XxxView.vue → 当前页面
    ↓  页面里引用
components/XxxComp.vue → 可复用小积木

地基一:什么是"响应式"?

普通 JS 变量改了,页面不会自动更新:

let count = 0
count = 1  // 页面:我不知道,我不管

Vue 的响应式变量改了,页面自动重新渲染:

const count = ref(0)
count.value = 1  // 页面:我感知到了,我刷新!

这就是响应式的核心——数据变 → 页面自动跟着变。

地基二:什么是"组合式 API / <script setup>"?

Vue 3 新写法,<script setup> 里写的变量和函数直接在模板里用,不用挂载到 data()、methods() 里了,比 Vue 2 简洁很多。

router.afterEach — 路由钩子

// 第 38~40 行
router.afterEach((to) => {
  current.value = [to.path]
})

这是一个全局路由钩子,意思是:每次路由跳转完成之后,自动执行这个函数。

  • to = 跳转到的目标路由对象,to.path 就是目标路径,比如 "/user/login"

  • 把 to.path 赋给 current.value,菜单高亮就自动同步了

执行时机:

用户访问 /user/login
  → 路由跳转
  → afterEach 触发
  → current.value = ["/user/login"]
  → 菜单高亮 "用户登录"

刷新页面也会触发,所以刷新后高亮也是对的。

刷新/跳转页面
    ↓
router.afterEach 触发
    ↓
current.value = [to.path]   ← 改的是 ref 响应式变量
    ↓
a-menu 感知到 current 变化   ← v-model 双向绑定
    ↓
对应菜单项高亮显示

ref()可以把变量变成响应式

基于Playwright+Pytest+Yaml+Allure的UI自动化测试框架实战指南 本文详细介绍了基于Playwright+Pytest+Yaml+Allure的UI自动化测试框架实战指南,涵盖环境搭建、核心功能实现及高级技巧。通过数据驱动测试、页面操作封装和智能等待机制,提升测试效率与可维护性。Allure报告增强功能为团队提供直观的质量反馈,助力高效UI自动化测试。 阅读详情

相关推荐

紫光同创FPGA中ADF网表文件的黑匣子封装与PDS环境实战指南

本文详细介绍了在紫光同创FPGA开发环境中使用ADF网表文件进行黑匣子封装的实战指南。通过PDS环境配置、加密ADF生成、黑匣子集成及验证调试等步骤,帮助开发者实现核心IP保护,同时保持设计性能。特别适用于需要模块级代码保护的企业级FPGA开发场景。

weixin_33725239的博客 341

Vue学习笔记之Vue3 6.26

Vue学习笔记之Vue3

qq_36450483的博客 344

手把手教你在全新服务器内网安装OpenEuler 22.03 LTS SP4+ 安装 openGuass 5.0.0(LTS) 数据库

openEuler是面向数字基础设施的操作系统,支持服务器、云计算、边缘计算、嵌入式等应用场景,支持多样性计算,致力于提供安全、稳定、易用的开源服务器Linux操作系统。

cgqyw的专栏 3737

Vue基础——VueJS是什么、Vue的优缺点、vue2和vue3的模板区别、MVVM数据双向绑定、Vue的安装和使用、Vue模板语法-文本渲染、常用的vue的指令

Vue基础——VueJS是什么、Vue的优缺点、vue2和vue3的模板区别、MVVM数据双向绑定、Vue的安装和使用、Vue模板语法-文本渲染、常用的vue的指令

ranran0306的博客 9713

怎么用phpstudy制作网站

随着实践的深入,你会逐渐掌握更多高级技巧和技术,让你的网站变得更加完善和吸引人。现在你已经成功设置了你的本地Web服务器环境,接下来我们将指导你如何利用这个环境来创建一个简单的PHP网页项目。为了使网站更加动态且功能丰富,我们需要学会如何让PHP脚本与MySQL数据库交互。为了让网站看起来更专业美观,可以考虑引入CSS样式表来定制网页布局及视觉效果。当你对本地开发的网站感到满意后,下一步就是将其发布到互联网上供他人访问了。让我们进一步扩展我们的网站,加入一个简单的用户注册与登录系统。

2401_87999399的博客 6574

波克 上海 Unity开发笔试题 2024

主要分为四部分,如果没有准备好,不要点击笔试链接,进入就会自动开始。

z2014z的博客 3396

尚硅谷Vue3基础 笔记

浅层式 API 创建的状态只在其顶层是响应式的,对所有深层的对象不会做任何处理,避免了对每一个内部属性做响应式所带来的性能成本,这使得属性的访问变得更快,可提升性能。用于获取一个响应式对象的原始对象, toRaw 返回的对象不再是响应式的,不会触发视图更新。创建一个浅层响应式对象,只会使对象的最顶层属性变成响应式的,对象内部的嵌套属性则不会变成响应式的。ref对象的value属性是响应式的。监视ref定义的对象类型数据,直接写数据名,监视的是对象的地址值,若想监视对象内部的数据,要手动开启深度监视。

HGAI 1939

Kaggle大神Abhishek的机器学习框架实战:从红酒数据集看交叉检验的坑与解法

本文通过Kaggle竞赛Grandmaster Abhishek Thakur的实战经验,以红酒数据集为例,深入探讨了机器学习中交叉检验的五大陷阱与优化策略。文章详细解析了决策树max_depth调优过程中的过拟合现象,对比了五种主流交叉检验方法的适用场景,并提供了回归问题中的分层技巧和特征工程陷阱的解决方案。最后,总结了交叉检验方案选型决策树,帮助数据科学家在实际项目中提升模型泛化能力。

h6j7k8l9p0的博客 964

vue学习路径 - 最全最新Vue、Vuejs教程,从入门到精通

Vue学习目录

全网同名:PBitW,更多内容,可以搜索《普通前端进阶记》 2594

YOLO26改进策略【卷积层】| DWRSeg :高效获取多尺度上下文信息,二次改进C3k2

本文记录的是利用DWR 模块改进 YOLO26 的特征提取部分。(Dilation-wise Residual)通过两步残差流程(区域残差化-语义残差化)与分支化空洞卷积结合,引导解码器处理特征与跳接特征的多尺度精准融合。本文利用模块,通过区域残差化生成简洁区域型特征图以简化融合基础,再通过分支化空洞卷积捕捉多尺度空间上下文,同时依托残差连接保留原始特征信息,对YOLO26中不同尺度目标特征进行针对性强化、抑制无效背景特征干扰,在特征融合阶段实现多尺度语义与细节信息的高效互补,避免传统多感受野卷积的冗余计算

Limiiiing的博客 159

网络无线AP信号走场测试软件(Ekahau 使用说明)

每次开启 Ekahau 软件需要重复此过程,才可以正常使用。 双击“Ekahau Pro activation.reg”,如下图所示; 点击“Yes”按钮 ,进行注册表合并; 点击“OK”按钮,确认; 运行“Ekahau Pro” 点击“Close”关闭提示; 点击“OK”,关闭提示; ...

Reyn_观极 6418

Vue 3 迁移策略笔记—— 第19节:移除 $listeners

前言 本笔记主要基于官方文档《迁移策略—— 移除$listeners》汇总而来。如有理解出入,请以官方文档为主。 概述 Vue 3.x 已经弃用$listeners 对象。而是将事件监听器并入$attrs ,作为attrs 的一部分。 $listeners 简介 vm.$listeners 2.4.0 新增 类型:{ [key: string]: Function | Array<Function> } 只读 详细: 包含了父作用域中的 (不含 .native 修饰器的)

Jay的博客 8307

【四足机器人项目实战】四足机器人嵌入式硬件设计

系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 TODO:写完再整理 文章目录系列文章目录前言一、电源管理板设计及制作二、通讯中继板设计及制作三、力控无刷电机驱动板设计及制作1.磁场定向控制FOC控制原理2.电机转子位置、速度检测原理3.硬件CAN通讯原理 前言 认知有限,望大家多多包涵,有什么问题也希望能够与大家多交流,共同成长! 本文先对四足机器人–嵌入式硬件设计做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章 提示:以下是本篇文章正文内容 一、电

qq_35635374的博客 1万+

Vue 3 迁移策略笔记—— 第6节:自定义指令

前言 本笔记主要基于官方文档《迁移策略——自定义指令》汇总而来。如有理解出入,请以官方文档为主。 概述 为了更好的与组件生命周期保持一致,Vue 3.x 对自定义指令的钩子函数进行了重命名。 Vue 2.x 自定义指令的声明周期 bind——指令绑定到元素时触发,只触发一次; inserted——绑定元素被插入父DOM时触发 update——当元素更新而子元素还没有更新时触发; componentUpdated——组件和子组件更新完成后触发; unbind——接触绑定时触发,只触发一次; Vue 3

Jay的博客 2864

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

vue3学习笔记

什么是hook?—— 本质是一个函数,把setup函数中使用的Composition API进行了封装。类似于vue2.x中的mixin。自定义hook的优势: 复用代码, 让setup中的逻辑更清楚易懂。

pscool的博客 2112

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

VueJs基础知识学习

--1、导入Vue的包-->

zwh1636771005的博客 225

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Vue 3 迁移策略笔记—— 第12节:片段

前言 本笔记主要基于官方文档《迁移策略—— 片段》汇总而来。如有理解出入,请以官方文档为主。 概述 Vue 3.x 支持组件内多个根节点,也就是片段! Vue 2.x 组件写法 在 Vue 2.x,组件不支持多根节点。所以,组件的写法只能如下: <template> <div> <header>...</header> <main>...</main> <footer>...</foot

Jay的博客 2272

【Vuejs】1208- Vue3 script-setup 使用指南

前言本文主要是讲解<script setup>与TypeScript的基本使用。<script setup>是什么?<script setup&gt...

pingan8787 2240

vue3那些事

一、vue 版本历史 2013年,在 Google 工作的尤雨溪,受到 Angular 的启发,开发出了一款轻量级框架,最初命名为 Seed 2013年12月,更名为 Vue,版本号是 0.6.0 2014年1月24日,Vue 正式对外发布,版本号是 0.8.0 2014年2月25日,0.9.0 发布,有了自己的代号 Animatrix,这个名字来自动画版的《骇客帝国》,此后,重要的版本都会有自己的代号 2015年6月13日,0.12.0发布,代号 Dragon Ball,Laravel 社区(一款流行的

小R.的博客 4052

Vue3.x笔记

初认识Vue3.x 官网:https://cn.vuejs.org/index.html Vue是一套基于MVVM模式的用于构建用户界面的Javascript框架。它是以数据驱动和组件化的思想构建的。Vuej是由一个名叫尤雨溪的作者开发的,他于 2013 年12月7 日发布了 Vuejs 的 0.6.0版本(之前的版本不叫 Vue.js),2015年10月26 日发布了 1.0.0 版本,2016 年 10 月1日发布了 2.0.0 版本,2020年 9 月 18日发布了3.0版本代号为 One Pieee

ડUN的博客 687

Vue 3 迁移策略笔记—— 第22节:Slots 的统一

前言 本笔记主要基于官方文档《迁移策略—— Slot 统一》汇总而来。如有理解出入,请以官方文档为主。 知识储备 如果你并不属性 Vue 的渲染函数,需先了解一下知识: 《渲染函数 & JSX——基础》 《渲染函数&JSX——createElement 参数》 《vm.$slots》 《this.$scopedSlots 》 概述 Vue 3.x 统一了$slots 和 $scopedSlots: this.$slots 作为函数对位暴露 移除 this.$scopedSlots

Jay的博客 4937

VueJS教程3

目录 13、Vue实例 13.1 动态组件(Tab切换、简化版留言板) 13.2 使用Vue开发TodoList 14、Vue CLI 14.1 使用vue-cli开发TodoList   接着VueJS教程2。 13、Vue实例 13.1 动态组件(Tab切换、简化版留言板) 参考:https://vuejs.bootcss.com/v2...

weixin_30312659的博客 223

26 vue3 Pinia 状态管理介绍

2 Pinia 上手3 storeToRefs的使用 {#store-to-refs}4 使用 Pinia 改造头条{#case}

THE ORDER 1510

【Vuejs】1117- 全面总结Vue3.0的新特性

总字数:5,864 | 阅读时间:26分钟 Vue3.0从20年九月发布第一个One Piece版本,到现在一直在更新优化;除了服务端渲染的工作,其他工作已经大部分完成了,中文版的官方文档...

pingan8787 615

Vue 3 迁移策略笔记—— 第5节:移除 $children

前言 本笔记主要基于官方文档《[迁移策略——移除 $children》汇总而来。如有理解出入,请以官方文档为主。 概述 在 Vue 3.x 中,将移除且不再支持 $children 。 Vue 2.x 中的 $children 官方描述: vm.$children 类型:Array<Vue instance> 只读 详细: 当前实例的直接子组件。**需要注意 $children 并不保证顺序,也不是响应式的。**如果你发现自己正在尝试使用 $children 来进行数据绑定,考

Jay的博客 4871

vue3详细学习笔记记录

vue3学习笔记记录,总结的比较全

qq_38676663的博客 1230
上一篇: 6.2前端笔记
下一篇: 2026.6.4 Vue用户中心项目笔记
超人不会飞_Jay
博客等级 码龄3年 71粉丝 20原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值