当前位置: 首页 > news >正文

从零基础到最佳实践:Vue.js 系列(4/10):《Vue Router 路由管理:深入探索与实战应用》

引言

在现代前端开发中,单页应用(SPA)凭借其流畅的用户体验和高性能成为主流。Vue Router 作为 Vue.js 的官方路由管理工具,为开发者提供了强大的路由管理能力,帮助实现页面导航、权限控制和动态内容加载。本文将从基础配置讲起,逐步深入到进阶功能,并结合丰富的实际开发场景,助你全面掌握 Vue Router。


Vue Router 简介

Vue Router 是 Vue.js 的官方路由库,与 Vue 核心深度集成。它支持多种路由模式(如 hash 和 history 模式),并提供动态路由、嵌套路由、路由守卫等功能,使开发者能够轻松构建复杂的 SPA。


安装与基础配置

安装 Vue Router

在 Vue 3 项目中,通过以下命令安装 Vue Router:

npm install vue-router@4

配置路由

路由配置通常在 router/index.js 文件中完成。以下是一个基础示例:

// router/index.js
import { createRouter, createWebHistory } from 'vue-router';
import Home from '@/views/Home.vue';
import About from '@/views/About.vue';const routes = [{ path: '/', name: 'Home', component: Home },{ path: '/about', name: 'About', component: About },
];const router = createRouter({history: createWebHistory(),routes,
});export default router;

main.js 中注册路由:

// main.js
import { createApp } from 'vue';
import App from './App.vue';
import router from './router';const app = createApp(App);
app.use(router);
app.mount('#app');

路由模式

  • Hash 模式:使用 URL 的 # 部分管理路由(createWebHashHistory()),无需后端支持。
  • History 模式:使用 HTML5 History API(createWebHistory()),需要后端配置支持。

核心功能详解

动态路由

动态路由允许通过参数传递数据,例如用户 ID:

{path: '/user/:id',name: 'User',component: () => import('@/views/User.vue'),
}

在组件中访问参数:

<template><h1>用户 ID: {{ $route.params.id }}</h1>
</template>

嵌套路由

嵌套路由适用于多层级页面布局,例如仪表盘:

{path: '/dashboard',component: () => import('@/views/Dashboard.vue'),children: [{ path: 'profile', component: () => import('@/views/Profile.vue') },{ path: 'settings', component: () => import('@/views/Settings.vue') },],
}

在父组件中使用 <router-view> 渲染子路由:

<template><div><h1>仪表盘</h1><router-view /></div>
</template>

路由导航

  • 声明式导航:使用 <router-link>
    <router-link to="/about">关于我们</router-link>
    
  • 编程式导航:使用 $router 方法:
    this.$router.push({ name: 'About' });
    

路由守卫

路由守卫用于导航控制,例如权限验证:

router.beforeEach((to, from, next) => {if (to.meta.requiresAuth && !localStorage.getItem('token')) {next('/login');} else {next();}
});

进阶功能

路由元信息

通过 meta 属性为路由添加元数据,例如权限要求:

{path: '/admin',component: Admin,meta: { requiresAuth: true, role: 'admin' },
}

路由懒加载

懒加载优化初始加载性能:

{path: '/about',component: () => import('@/views/About.vue'),
}

命名视图

支持同一页面渲染多个组件:

{path: '/multi',components: {default: MainContent,sidebar: Sidebar,},
}
<template><div><router-view /><router-view name="sidebar" /></div>
</template>

滚动行为

控制页面滚动:

const router = createRouter({history: createWebHistory(),routes,scrollBehavior(to, from, savedPosition) {if (savedPosition) return savedPosition;return { top: 0 };},
});

实际开发应用场景

场景 1:用户认证与权限管理

在需要登录的页面添加守卫,并动态调整导航:

const routes = [{ path: '/login', component: Login },{path: '/dashboard',component: Dashboard,meta: { requiresAuth: true },children: [{ path: 'profile', component: Profile },{ path: 'admin', component: Admin, meta: { role: 'admin' } },],},
];router.beforeEach((to, from, next) => {const token = localStorage.getItem('token');const userRole = localStorage.getItem('role');if (to.meta.requiresAuth && !token) {next('/login');} else if (to.meta.role && to.meta.role !== userRole) {next('/forbidden');} else {next();}
});

场景 2:动态内容加载与错误处理

根据参数加载用户数据,并处理 404:

const routes = [{ path: '/user/:id', component: User },{ path: '/:pathMatch(.*)*', name: 'NotFound', component: NotFound },
];
<!-- User.vue -->
<template><div v-if="user"><h1>{{ user.name }}</h1><p>{{ user.email }}</p></div><div v-else>加载中...</div>
</template><script>
import { ref, onMounted } from 'vue';
import { useRoute } from 'vue-router';export default {setup() {const route = useRoute();const user = ref(null);onMounted(async () => {try {const response = await fetch(`/api/user/${route.params.id}`);user.value = await response.json();} catch (error) {console.error('用户加载失败', error);}});return { user };},
};
</script>

场景 3:复杂布局与嵌套路由

实现仪表盘的多级导航和侧边栏:

{path: '/dashboard',component: DashboardLayout,children: [{ path: '', redirect: '/dashboard/overview' },{ path: 'overview', component: Overview },{ path: 'reports', component: Reports },],
}
<!-- DashboardLayout.vue -->
<template><div class="flex"><aside class="w-64 bg-gray-800 text-white"><nav><router-link to="/dashboard/overview">概览</router-link><router-link to="/dashboard/reports">报告</router-link></nav></aside><main class="flex-1 p-4"><router-view /></main></div>
</template>

场景 4:搜索功能与查询参数

处理带查询参数的路由,例如搜索页面:

{path: '/search',component: Search,
}
<!-- Search.vue -->
<template><div><input v-model="query" @keyup.enter="search" placeholder="输入关键词" /><ul><li v-for="item in results" :key="item.id">{{ item.title }}</li></ul></div>
</template><script>
import { ref, watch } from 'vue';
import { useRoute, useRouter } from 'vue-router';export default {setup() {const route = useRoute();const router = useRouter();const query = ref(route.query.q || '');const results = ref([]);const search = () => {router.push({ path: '/search', query: { q: query.value } });};watch(() => route.query.q, async (newQuery) => {if (newQuery) {const response = await fetch(`/api/search?q=${newQuery}`);results.value = await response.json();}});return { query, results, search };},
};
</script>

性能优化技巧

路由懒加载与分包

结合 Webpack 的动态导入实现按需加载:

{path: '/heavy-page',component: () => import(/* webpackChunkName: "heavy" */ '@/views/HeavyPage.vue'),
}

路由缓存

使用 <keep-alive> 缓存组件状态:

<router-view v-slot="{ Component }"><keep-alive><component :is="Component" /></keep-alive>
</router-view>

预加载关键路由

在用户登录后预加载重要页面:

router.beforeEach((to, from, next) => {if (to.path === '/login') {import('@/views/Dashboard.vue'); // 预加载}next();
});

未来趋势展望(2025 年)

到 2025 年,Vue Router 可能会进一步优化与服务端渲染(SSR)和静态站点生成(SSG)的集成,支持更复杂的路由动画和状态管理。此外,与 Composition API 的结合将更紧密,可能推出更多基于 hooks 的路由工具。


总结

Vue Router 是构建现代 Vue.js 应用不可或缺的工具。通过本文的深入讲解,你应该能够掌握其核心功能,并在实际开发中灵活应用。从用户认证到动态内容加载,再到复杂布局设计,Vue Router 都能提供强大的支持。希望这篇文章能为你的开发实践带来启发!

相关文章:

从零基础到最佳实践:Vue.js 系列(4/10):《Vue Router 路由管理:深入探索与实战应用》

引言 在现代前端开发中&#xff0c;单页应用&#xff08;SPA&#xff09;凭借其流畅的用户体验和高性能成为主流。Vue Router 作为 Vue.js 的官方路由管理工具&#xff0c;为开发者提供了强大的路由管理能力&#xff0c;帮助实现页面导航、权限控制和动态内容加载。本文将从基…...

深入解析C++静态成员变量与函数

当然可以&#xff01;下面是对这段 C 代码的逐行详细注释说明和解释&#xff0c;帮助你理解静态成员变量和静态成员函数的使用。 &#x1f9f1; 类定义部分&#xff1a;MyClass cpp 深色版本 #include <iostream> 说明&#xff1a;包含标准输入输出流库&#xff0c;用于…...

基于JDBC的信息管理系统,那么什么是JDBC呢?什么又是DAO类?

1.JDBC JDBC 即 Java Database Connectivity&#xff0c;是 Java 语言中用于与数据库进行交互的一套 API。它提供了一种标准的方式&#xff0c;让 Java 程序能够连接到各种不同类型的数据库&#xff0c;并执行 SQL 语句来实现对数据库的查询、插入、更新和删除等操作。 主要功…...

Java虚拟机 -虚拟机栈

虚拟机栈详解 虚拟机栈概述案例常见的跟虚拟栈异常相关的异常StackOverflowError异常OutOfMemoryError异常 栈的基本存储单位局部变量表IDEA Jclasslib Bytecode Viewer插件slot 操作数栈方法调用&#xff08;待后续补充&#xff09; 虚拟机栈 上一篇文章&#xff0c;我们简单…...

【AI News | 20250521】每日AI进展

AI Repos 1、OpenHands OpenHands&#xff08;前身为OpenDevin&#xff09;是一个由AI驱动的软件开发代理平台&#xff0c;它能够像人类开发者一样修改代码、运行命令、浏览网页、调用API&#xff0c;甚至从StackOverflow复制代码片段。用户可以通过OpenHands Cloud轻松上手&a…...

RAG 挑战赛冠军方案解析:从数据解析到多路由器检索的工程实践,推荐阅读!

多路由器 动态知识库&#xff1a;RAG 冠军方案的核心技术揭秘 源码地址&#xff1a;https://github.com/IlyaRice/RAG-Challenge-2/tree/main 公司年报智能问答比赛任务简介 比赛的任务是基于公司年度报告构建一个问答系统。简单来说&#xff0c;比赛当天的流程如下&#xff…...

Java基础 Day17

一、递归 方法直接或者间接调用本身 将大问题, 层层转化为一个与原问题相似的、规模更小的问题来解决 二、异常 程序在编译或执行过程中&#xff0c;出现的非正常的情况 (错误) 语法错误不是异常 1、阅读异常信息 从下往上看&#xff1a;发生异常的位置、异常名称、发生异…...

系分论文《论软件系统安全分析和应用》

系统分析师论文范文系列 【摘要】 2023年3月&#xff0c;我司承接了某知名电商企业“智能化供应链管理系统”的开发任务&#xff0c;我作为系统分析师负责全面的安全分析与设计工作。该系统以提升电商供应链效率为核心&#xff0c;整合仓储、物流、支付等模块&#xff0c;并需应…...

蓝耘Ubantu服务器测试最新 PP-StructureV3 教程

一、服务器配置 二、安装Anaconda3 进入云服务器后删除minconda文件夹 官网&#xff1a; https://repo.anaconda.com/archive/ 在里面找到自己系统的安装包&#xff0c;然后右击复制链接安装。 一定要选择Anaconda,因为很多依赖问题用Minconda容易报错。 wget https://repo…...

File文件

路径&#xff1a; 相对路径&#xff1a;以 当前工作目录&#xff08;或指定的基准目录&#xff09;为起点&#xff0c;描述目标文件或目录的位置&#xff0c;不包含根目录信息&#xff0c;仅表示与基准目录的相对位置关系。绝对路径&#xff1a;从文件系统的 根目录 开始&…...

Wireshark抓包分析小程序接口请求教程

## 1. 准备工作 ### 1.1 安装Wireshark - 访问Wireshark官网 (https://www.wireshark.org/) 下载最新版本 - 按照安装向导完成安装 - 确保安装时选择安装WinPcap或Npcap&#xff08;用于网络数据包捕获&#xff09; ### 1.2 配置环境 - 确保电脑已连接网络 - 如果使用手机…...

C++之模板进阶(探索C++模板:非类型参数与特化技巧)

本节目标&#xff1a; 1.非类型模板参数 2.类模板的特化 3.类模板特化的应用之类型萃取 4.模板的分离编译 非类型模板参数 模板参数分 类型形参与非类型形参 类型形参&#xff1a;出现在模板参数列表中&#xff0c;跟在class或者typename之类的参数类型名称 非类型形…...

【项目记录】准备工作及查询部门

1 开发规范 1.1 前后端分离开发 现在的企业项目开发有2种开发模式&#xff1a;前后台混合开发和前后台分离开发。 前后台混合开发&#xff0c;顾名思义就是前台后台代码混在一起开发 这种开发模式有如下缺点&#xff1a; 1. 沟通成本高&#xff1a;后台人员发现前端有问题&a…...

chromedp -—— 基于 go 的自动化操作浏览器库

chromedp chromedp 是一个用于 Chrome 浏览器的自动化测试工具&#xff0c;基于 Go 语言开发&#xff0c;专门用于控制和操作 Chrome 浏览器实例。 chromedp 安装 go get -u github.com/chromedp/chromedp基于chromedp 实现的的简易学习通刷课系统 目前实现的功能&#xff…...

企业级调度器LVS

访问效果 涉及内容&#xff1a;浏览拆分、 DNS 解析、反向代理、负载均衡、数据库等 1 集群 1.1 集群类型简介 对于⼀个业务项⽬集群来说&#xff0c;根据业务中的特性和特点&#xff0c;它主要有三种分类&#xff1a; 高扩展 (LB) &#xff1a;单个主机负载不足的时候&#xf…...

MySQL中的重要常见知识点(入门到入土!)

基础篇 基础语法 添加数据 -- 完整语法 INSERT INTO 表名 (字段名1, 字段名2, ...) VALUES (值1, 值2, ...);-- 示例 insert into employee(id,workno,name,gender,age,idcard,entrydate) values(1,1,Itcast,男,10,123456789012345678,2000-01-01) 修改数据 -- 完整语法 UPDA…...

29.第二阶段x64游戏实战-技能冷却

免责声明&#xff1a;内容仅供学习参考&#xff0c;请合法利用知识&#xff0c;禁止进行违法犯罪活动&#xff01; 本次游戏没法给 内容参考于&#xff1a;微尘网络安全 上一个内容&#xff1a;28.第二阶段x64游戏实战-代码实现遍历技能 找技能冷却要通过一个技能cd长点的&…...

第19天-Python自动化生成PPT图文教程(基于python-pptx)

环境准备 pip install python-pptx Pillow 基础示例:批量插入图片 from pptx import Presentation from pptx.util import Inches import os from PIL import Image def create_image_slides(): # 初始化演示文稿 prs = Presentation() # 获取当前目录所…...

基于STM32的骑行语音播报系统

目录 一、前言 二、项目功能说明 三、主要元器件 四、原理图与PCB 五、手机APP 六、完整资料 一、前言 项目成品图片&#xff1a; 哔哩哔哩视频链接&#xff1a; 咸鱼商品链接&#xff1a; 基于STM32的骑行语音播报系统 二、项目功能说明 基础功能&#xff1a; 1&…...

springboot链接nacos测试

代码资料链接&#xff1a;https://download.csdn.net/download/ly1h1/90881498 场景说明&#xff1a;本次测试是springboot项目&#xff0c;可以链接上ncaos&#xff0c;将对应命名空间下的配置信息读取出俩&#xff0c;然后可以在接口进行返回显示。 0.环境配置 1.代码结构 …...

【初识】内网渗透——基础概念,基本工具使用

目录 一、域&#xff0c;工作组&#xff0c;域控制器&#xff0c;活动目录相关概念&#xff1a; 域环境&#xff1a; 工作组&#xff1a; 域控制器DC&#xff1a; 活动目录AD&#xff1a; 二、内网的基本场景&#xff1a; 三、内网渗透基本测试方案&#xff1a; #案例1一基本信…...

AI练习:混合圆

方法一&#xff1a;在圆内 1.画圆 选择椭圆工具&#xff0c;按住Shift键绘制正圆&#xff1b; CtrlC复制&#xff0c;CtrlF原地粘贴&#xff0c;按住Shift键缩小圆&#xff0c;移动位置&#xff1b; 再CtrlC&#xff0c;CtrlF&#xff0c;再按住Shift键缩小圆&#xff0c;移…...

心知天气 API 获取天气预报 2025/5/21

心知天气 API 获取天气预报 2025/5/21 URL格式: https://api.seniverse.com/v3/weather/now.json?key填你的秘钥&locationbeijing(这里填城市 可以用拼音)&languagezh-Hans&unitc 返回格式如下:...

PCB设计教程【入门篇】——电路分析基础-元件数据手册

前言 本教程基于B站Expert电子实验室的PCB设计教学的整理&#xff0c;为个人学习记录&#xff0c;旨在帮助PCB设计新手入门。所有内容仅作学习交流使用&#xff0c;无任何商业目的。若涉及侵权&#xff0c;请随时联系&#xff0c;将会立即处理 目录 前言 一、数据手册的重要…...

java上机测试错题回顾(1)

平时不能摸鱼太多&#xff0c;这样导致到最后不能摸鱼...... 看了看日历原来是6.12就结课了&#xff0c;啊哈哈&#xff0c;真没几天准备了&#xff0c;期末月你要来了吗&#xff1f; 1 参数传递&#xff0c;值传递~&#xff01; 题目 以下代码的输出结果为&#xff08; &a…...

HTTP相关内容

应用层 自定义应用层协议,协议:约定 1.约定好通信传输的信息 2.约定好数据的组织格式(xml, json(重点), protobuf) 也可以基于现成的应用层协议,来进行开发 协议的种类非常多(HTTP 协议属于翘楚,1.手机,2 网站) 跟正确的说,咱们现在使用的是 HTTPS 这个协议,HTTP和HTTPS …...

【笔记】排查并解决Error in LLM call after 3 attempts: (status code: 502)

#工作记录 一、问题描述 在部署运行部署对冲基金分析工具 ai-hedge-fund 时&#xff0c;不断出现以下报错&#xff0c;导致项目运行异常&#xff1a; Error in LLM call after 3 attempts: (status code: 502) Error in LLM call after 3 attempts: [WinError 10054] 远程主…...

基于python的机器学习(七)—— 数据特征选择

目录 一、特征选择概念 二、特征选择的方法 2.1 过滤式特征选择 2.1.1 方差分析 2.1.2 相关系数 2.1.3 卡方检验 2.2 包裹式特征选择 2.2.1 递归特征消除 2.3 嵌入式特征选择 2.3.1 决策树特征重要性 一、特征选择概念 特征选择是机器学习非常重要的一个步骤&#x…...

从电商角度设计大模型的 Prompt

从电商角度设计大模型的 Prompt&#xff0c;有一个关键核心思路&#xff1a;围绕具体业务场景明确任务目标输出格式&#xff0c;帮助模型为运营、客服、营销、数据分析等工作提效。以下是电商场景下 Prompt 设计的完整指南&#xff0c;包含通用思路、模块范例、实战案例等内容。…...

从零基础到最佳实践:Vue.js 系列(5/10):《状态管理》

引言 你是不是正在用 Vue.js 开发一个很酷的应用&#xff0c;然后发现组件之间的数据传递变得越来越混乱&#xff1f;比如&#xff0c;一个按钮的状态要传到好几层组件&#xff0c;或者多个页面需要共享同一个用户信息。这时候&#xff0c;状态管理就登场了&#xff01;在 Vue…...

git checkout HEAD

git checkout HEAD 主要用于将工作目录和暂存区的内容重置为当前 HEAD 指向的提交状态&#xff0c;常用于撤销未提交的修改15。具体行为如下&#xff1a; 一、核心作用 ‌恢复工作区文件‌ 将指定文件或全部文件恢复到 HEAD 指向的提交状态&#xff0c;丢弃工作区中未暂存的修改…...

git工具使用

安装Git 在开始使用Git之前&#xff0c;需要在本地计算机上安装Git工具。Git支持Windows、macOS和Linux系统。可以从Git官方网站下载适合操作系统的安装包&#xff0c;并按照安装向导进行安装。 bash复制插入 # 在Linux上安装Git sudo apt-get install git# 在macOS上安装Git…...

极大似然估计与机器学习

复习概统的时候突然发现好像极大似然估计MLE与机器学习的数据驱动非常相似&#xff0c;都是采样样本然后估计模型参数。貌似&#xff0c;后知后觉的才意识到极大似然估计就是机器学习有效的数学保证 下面以拟合线性分布的最小二乘与分类问题为例推到以下如何从似然函数推导出M…...

基于 Guns v5.1 框架的分页教程

基于 Guns v5.1 框架的分页教程 第一步&#xff1a;Controller 层处理前端请求 在 Controller 中&#xff0c;需要接收 Bootstrap Table 传来的分页参数&#xff08;limit, offset, sort, order&#xff09;。Guns 提供了封装好的 PageFactory 类来简化 Page 对象的创建。 R…...

从零搭建SpringBoot Web 单体项目【基础篇】2、SpringBoot 整合数据库

系列文章 从零搭建SpringBoot Web单体项目【基础篇】1、IDEA搭建SpringBoot项目 从零搭建 SpringBoot Web 单体项目【基础篇】2、SpringBoot 整合数据库 目录 一、项目基础环境说明 二、数据库整合流程 1. 添加 MyBatis-Plus 相关依赖&#xff08;pom.xml&#xff09; 2…...

Supplemental Table 5FAM49B H-SCORE与其他临床特征的关系

以下是针对 Supplemental Table 5 中不同变量类型所需检验方法的 SPSS纯界面操作步骤(严格匹配原文统计方法): Supplemental Table 5 SPSS操作步骤 目标:分析FAM49B H-SCORE与其他临床特征的关系,按变量类型选择检验方法。 变量与检验方法对应表 变量变量类型检验方法SP…...

信息系统项目管理师考前练习4

项目范围基准变更 当客户提出新增功能需求时,项目经理首先应该: A. 立即更新范围说明书 B. 提交变更请求并评估影响 C. 要求团队加班实现 D. 拒绝变更以保持进度 答案:B 解析:所有范围变更必须走正式变更流程(第5版强调变更控制),评估影响是第一步。 混合项目管理模式…...

C语言判断素数(附带源码和解析)

素数&#xff0c;也称为质数&#xff0c;是一个大于 1 的自然数&#xff0c;除了 1 和它本身外&#xff0c;不能被其他自然数整除。换句话说&#xff0c;素数只有两个因子&#xff1a;1 和它自身。例如&#xff0c;2、3、5、7、11 和 13 都是素数。 素数在数学和计算机科学中扮…...

汽车电子电气架构诊断功能开发全流程解析

我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 钝感力的“钝”,不是木讷、迟钝,而是直面困境的韧劲和耐力,是面对外界噪音的通透淡然。 生活中有两种人,一种人格外在意别人的眼光;另一种人无论…...

Xilinx XCAU10P-2FFVB676I 赛灵思 Artix UltraScale+ FPGA

XCAU10P-2FFVB676I 是 AMD Xilinx 推出的 Artix UltraScale™ FPGA 器件&#xff0c;内部集成了约 96,250 逻辑单元&#xff0c;满足中等规模高性能应用的需求。该芯片采用 16 nm FinFET 制程工艺&#xff0c;核心电压典型值约 0.85 V&#xff0c;能够在较低功耗下提供高达 775…...

DS18B20 温度传感器实验探索与实践分享​

DS18B20 温度传感器实验探索与实践分享 在嵌入式系统开发领域&#xff0c;温度监测是常见的应用场景。本次实验聚焦于 DS18B20 温度传感器&#xff0c;旨在掌握其工作原理、单总线通信方式&#xff0c;以及实现温度采集与数码管显示&#xff0c;同时开启温度报警功能。接下来&…...

RT_Thread——内存管理

文章目录 一、为什么要自己实现内存管理二、RT-Thread 的内存管理方法2.1 小内存管理算法2.2 slab 管理算法2.3 memheap 管理算法 三、Heap 相关的函数3.1 rt_system_heap_init3.2 rt_malloc/rt_realloc/rt_calloc2.3 rt_free2.4 rt_malloc_sethook/rt_free_sethook 一、为什么…...

Temporary failure in name resolution

这个错误 ping: baidu.com: Temporary failure in name resolution 通常表示 DNS 解析的问题&#xff0c;也就是说你的系统无法通过域名服务器解析 baidu.com 的 IP 地址。 解决方案&#xff1a; 检查 DNS 配置( 有效 )&#xff1a; 确保系统的 DNS 配置是正确的。你可以检查 …...

【动手学深度学习】1.4~1.8 深度学习的发展及其特征

目录 1.4. 起源1.5. 深度学习的发展1.6. 深度学习的成功案例1.7. 特点1.8. 小结 1.4. 起源 深度学习的起源可追溯至多个领域的长期发展&#xff1a; 统计学基础&#xff1a;早期统计学方法&#xff08;如伯努利分布、高斯分布、最小均方算法&#xff09;和估计思想&#xff08…...

深度学习之序列建模的核心技术:LSTM架构深度解析与优化策略

LSTM深度解析 一、引言 在深度学习领域&#xff0c;循环神经网络&#xff08;RNN&#xff09;在处理序列数据方面具有独特的优势&#xff0c;例如语音识别、自然语言处理等任务。然而&#xff0c;传统的 RNN 在处理长序列数据时面临着严重的梯度消失问题&#xff0c;这使得网…...

Gartner研究报告《Generative AI 赋能Digital Commerce的三种路径》学习心得

一、研究背景 随着生成式 AI(GenAI)技术的迅速发展,其在数字商务领域的应用受到了广泛关注。这篇研究报告深入探讨了 GenAI 在数字商务中的角色以及它如何与现有的数字商务技术相结合来发挥优势,为应用领导者提供了关于如何利用 GenAI 优化技术投资策略的见解。 二、GenA…...

解锁 YOLOv8 新潜能:EfficientViT 主干网络的优化实践与实验数据解读

文章目录 一、YOLO 系列主干网络的发展历程二、EfficientViT&#xff1a;YOLOv8 主干网络的新宠&#xff08;一&#xff09;EfficientViT 的核心优势&#xff08;二&#xff09;EfficientViT 在 YOLOv8 中的集成与实现 三、实验对比&#xff1a;EfficientViT vs. MobileNet 系列…...

【前端基础】12、CSS的overflow(visible、hidden、scroll、auto)【注:只有最基础的说明。】

一、overflow的作用 用于控制内容溢出时的行为。 二、overflow的使用 visible&#xff1a;超出的部分正常显示&#xff08;默认设定&#xff09; hidden&#xff1a;超出的部分隐藏显示&#xff08;直接裁剪掉&#xff09; scroll&#xff1a;超出的部分滚动显示 滚动条…...

创建一个element plus项目

当然可以&#xff01;下面是一个 Vue 3 Element Plus 的最简单完整示例&#xff0c;它包括&#xff1a; 使用 <el-button> 按钮组件点击按钮后用 ElMessage 弹出提示 ✅ 1. 安装并初始化项目&#xff08;如果还没创建项目&#xff09; 你可以用官方推荐的方式快速创建…...

openCV1.1 Mat对象

imread(“D:\souse\duoxile.jpg”, IMREAD_COLOR); 功能: 从指定路径读取图像文件并解码为OpenCV的Mat对象 第一个参数: 文件路径 类型: const string&描述: 要读取的图像文件的绝对或相对路径示例: “D:\souse\duoxile.jpg” 或 “./images/test.png”第二个参数: 读取模…...