Vue3框架中路由的使用和局部刷新的功能(第十一课)

news/2024/4/20 20:18:36/文章来源:https://blog.csdn.net/qq_56248592/article/details/128103240

 

 

 

 

 

 

使用vue-router的步:
p第一步:创建路由需要映射的组件面);
p第二步:通过createRouter路由routeshistory模式
ü配置路由映射: 组件和路径映射关系routes数组;
ü创建基于hash或history的模式;
p第三步:使用app注册路由对象(use法);
p第四步:路由使用: 通过<router-link><router-view>
nrouter-link事实有很属性以配
to属性:
p是一个字符串,或者是一个对象
replace属性:
p replace 属性的话,当点击时,会调 router.replace(), router.push();
active-class属性:
p设置激活a元素后应用的class,默认是router-link-active
exact-active-class属性:
p链接精准激活时,应用于渲染的 <a> class,默认是router-link-exact-active;

 

编号2
编号3

编号四

编号五

 

编号六
编号七
编号八

 

用到了文件的信息

 路由文件的配置信息

/* eslint-disable indent */
import { createRouter, createWebHashHistory, createWebHistory, RouteRecordRaw } from 'vue-router'
import HomeView from '../views/HomeView.vue'// 第一步 配置路由的基本信息内容
// 第二步 将路由的必要包文件导入进来
// 第三步 定义变量 配置文件信息
const routes: Array<RouteRecordRaw> = [{path: '/',name: 'home',component: HomeView},{path: '/:pathMatch(.*)*',name: 'NotFpund',component: () => import(/* webpackChunkName: "about" */ '../views/NotFpund.vue')},{path: '/two/:id:name',name: 'two',component: () => import(/* webpackChunkName: "about" */ '../views/Two.vue')},{path: '/four',name: 'four',component: () => import(/* webpackChunkName: "about" */ '../views/four.vue')},{path: '/abouta',name: 'abouta',component: () => import(/* webpackChunkName: "about" */ '../views/abouta.vue'),children: [{path: '/abouta/aboutson1',name: 'aboutson1',component: () => import(/* webpackChunkName: "about" */ '../views/aboutson1.vue')},{path: '/abouta/aboutson2',name: 'aboutson2',component: () => import(/* webpackChunkName: "about" */ '../views/aboutson2.vue')},{path: '/abouta/aboutson3',name: 'aboutson3',component: () => import(/* webpackChunkName: "about" */ '../views/aboutson3.vue'),children: [{path: '/abouta/aboutson3/aboutb',name: 'aboutb',component: () => import(/* webpackChunkName: "about" */ '../views/aboutb.vue')},{path: '/abouta/aboutson3/aboutc',name: 'aboutc',component: () => import(/* webpackChunkName: "about" */ '../views/aboutc.vue')}]}]},{path: '/aboutb',name: 'aboutb',component: () => import(/* webpackChunkName: "about" */ '../views/aboutb.vue')},{path: '/aboutc',name: 'aboutc',component: () => import(/* webpackChunkName: "about" */ '../views/aboutc.vue')},{path: '/fiver',name: 'fiver',component: () => import(/* webpackChunkName: "about" */ '../views/fiver.vue')},{path: '/three',name: 'three',component: () => import(/* webpackChunkName: "about" */ '../views/three.vue'),meta: {name: 'qhy',age: 34}},{path: '/about',name: 'about',// 路由的赖加载技术component: () => import(/* webpackChunkName: "about" */ '../views/AboutView.vue')},{path: '/one',name: 'one',component: () => import(/* webpackChunkName: "about" */ '../views/One.vue')}]const router = createRouter({history: createWebHistory(process.env.BASE_URL),// history: createWebHashHistory(process.env.BASE_URL),routes
})// 增加一个动态的路由
const addrount = {path: '/addrount',name: 'addroun',component: () => import(/* webpackChunkName: "about" */ '../views/addroun.vue')
}
router.addRoute(addrount)export default router

控制器文件信息

import { createApp } from 'vue'
import App from './App.vue'// import App from '../01 状态管理/App.vue'
// 注册状态管理
import store from './store'
// 注册路由
import router from './router'createApp(App).use(router).use(store).mount('#app')

一级目录

<template><nav><router-link to="/">Home</router-link> &nbsp;&nbsp;&nbsp;<router-link to="/about">About</router-link>&nbsp;&nbsp;&nbsp;<router-link to="/one">One页面</router-link>&nbsp;&nbsp;&nbsp;<router-link to="/two/123456/admiander">Two页面</router-link>&nbsp;&nbsp;&nbsp;<router-link to="three">Three页面</router-link>&nbsp;&nbsp;&nbsp;<router-link to="four">four页面</router-link>&nbsp;&nbsp;&nbsp;<router-link to="fiver" active-class="root">fiver页面</router-link>&nbsp;&nbsp;&nbsp;<router-link to="NotFpund">NotFpund</router-link>&nbsp;&nbsp;&nbsp;<router-view></router-view><button>我是按钮单机我去往其他的页面</button></nav>
</template><script>
export default {created () {console.log(this.$route)}}
</script><style>
*{margin-top: 40px;
}
#app {font-family: Avenir, Helvetica, Arial, sans-serif;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;text-align: center;color: #0080ff;
}nav {padding: 30px;font-weight: 700;color: darkcyan;
}nav a {font-weight: bold;color: #2c3e50;
}nav a.router-link-exact-active {color: #42b983;
}
.root {background-color: rgb(0, 0, 0);color: green;
}
</style>

二级目录

<!-- eslint-disable vue/multi-word-component-names -->
<template><div class="One"><h1>我是One页面的信息数据</h1><h3>Essential Links</h3><ul><router-link to="abouta">关于公司内容</router-link>&nbsp;&nbsp;&nbsp;|<router-link to="aboutb">关于注册页面</router-link>&nbsp;&nbsp;&nbsp;|<router-link to="aboutc">关于登录页面</router-link>&nbsp;&nbsp;&nbsp;|<router-view></router-view></ul></div></template><style scoped>*{background-color: rgb(50, 169, 14);color: white;border-radius: 20px;}
</style>

三级目录

<!-- eslint-disable vue/multi-word-component-names -->
<template><div class="Two"><h1>我是abouta页面的信息数据</h1><h3>Ecosystem</h3><h4>abouta页面的介绍</h4><div><router-link to="abouta/aboutson1">aboutson1</router-link>&nbsp;|<router-link to="abouta/aboutson2">aboutson2</router-link>&nbsp;|<router-link to="abouta/aboutson2">aboutson3</router-link>&nbsp;|<router-link to="abouta">关于公司内容</router-link>&nbsp;&nbsp;&nbsp;|<router-link to="aboutb">关于注册页面</router-link>&nbsp;&nbsp;&nbsp;|<router-link to="aboutc">关于登录页面</router-link>&nbsp;&nbsp;&nbsp;|<router-link to="addroun">增加一个路由</router-link>&nbsp;&nbsp;&nbsp;|<router-view></router-view></div></div>
</template><style scoped>
* {background-color: rgb(255, 255, 255);color: rgb(0, 0, 0);border-radius: 20px;
}
</style>

四级目录

<!-- eslint-disable vue/multi-word-component-names -->
<template><div class="aboutason2"><h1>我是aboutason2页面的信息数据</h1><h3>Ecosystem</h3><h4>abouta页面的介绍</h4><router-link to="abouta">关于公司内容</router-link>&nbsp;&nbsp;&nbsp;|<router-link to="aboutb">关于注册页面</router-link>&nbsp;&nbsp;&nbsp;|<router-link to="aboutc">关于登录页面</router-link>&nbsp;&nbsp;&nbsp;|<router-view></router-view></div>
</template>

一级目录的其他文件

<!-- eslint-disable vue/multi-word-component-names -->
<template><div class="Two"><h1>我是Two页面的信息数据</h1><h3>Ecosystem</h3></div></template><style scoped>*{background-color: rgb(13, 0, 255);color: rgb(206, 9, 9);border-radius: 20px;}
</style><!-- eslint-disable vue/multi-word-component-names -->
<template><div class="Three"><h1>我是Three页面的信息数据</h1><h3>Ecosystem</h3></div></template><style scoped>*{background-color: rgb(174, 234, 10);color: rgb(255, 255, 255);border-radius: 20px;}
</style><!-- eslint-disable vue/multi-word-component-names -->
<template><div class="four"><h1>我是Four页面的信息数据</h1><h3>Ecosystem</h3></div></template><style scoped>*{background-color: rgb(0, 68, 105);color: rgb(255, 0, 0);border-radius: 20px;}
</style><!-- eslint-disable vue/multi-word-component-names -->
<template><div class="Fiver"><h1>我是Fiver页面的信息数据</h1><h3>Ecosystem</h3></div></template><style scoped>*{background-color: rgb(255, 0, 195);color: rgb(81, 0, 255);border-radius: 20px;}
</style><template><h2>Not Fund:{{ $route.params.pathMatch}}</h2>
</template>

二级目录的其他文件

<!-- eslint-disable vue/multi-word-component-names -->
<template><div class="Two"><h1>我是abouta页面的信息数据</h1><h3>Ecosystem</h3><h4>abouta页面的介绍</h4><div><router-link to="abouta/aboutson1">aboutson1</router-link>&nbsp;|<router-link to="abouta/aboutson2">aboutson2</router-link>&nbsp;|<router-link to="abouta/aboutson2">aboutson3</router-link>&nbsp;|<router-link to="abouta">关于公司内容</router-link>&nbsp;&nbsp;&nbsp;|<router-link to="aboutb">关于注册页面</router-link>&nbsp;&nbsp;&nbsp;|<router-link to="aboutc">关于登录页面</router-link>&nbsp;&nbsp;&nbsp;|<router-link to="addroun">增加一个路由</router-link>&nbsp;&nbsp;&nbsp;|<router-view></router-view></div></div>
</template><style scoped>
* {background-color: rgb(255, 255, 255);color: rgb(0, 0, 0);border-radius: 20px;
}
</style><!-- eslint-disable vue/multi-word-component-names -->
<template><div class="Two"><h1>我是aboutb页面的信息数据</h1><h3>Ecosystem</h3></div></template><style scoped>*{background-color: rgb(236, 235, 255);color: rgb(25, 141, 44);border-radius: 20px;}
</style><!-- eslint-disable vue/multi-word-component-names -->
<template><div class="Two"><h1>我是aboutc页面的信息数据</h1><h3>Ecosystem</h3></div></template><style scoped>*{background-color: rgb(236, 235, 255);color: rgb(57, 132, 218);border-radius: 20px;}
</style>

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

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

相关文章

DFL3:软件版本的选择和安装详解

这本是一个简单的问题&#xff0c;但是对于新手而言&#xff0c;所有问题&#xff0c;总是说的越清楚越仔细越好。我之所以这么说&#xff0c;肯定是有人问了。所以我就专门开一篇文章来说一说&#xff0c;软件版本的异同&#xff0c;以及如何选择。针对不同的语言&#xff0c;…

mysql相关基础知识篇(五)

1.MySQL 事务的四大特性说一下&#xff1f; 原子性&#xff1a;事务作为一个整体被执行&#xff0c;包含在其中的对数据库的操作要么全部被执行&#xff0c;要么都不执行。一致性&#xff1a;指在事务开始之前和事务结束以后&#xff0c;数据不会被破坏&#xff0c;假如 A 账户…

(2)点云库处理学习——剔除点云值

1、主要参考 1.1参考地址 (1) 点云离群点剔除 — open3d python_Coding的叶子的博客-CSDN博客_离群点去除 (2) open3d之点云异常值去除&#xff08;笔记5&#xff09;_Satellite_H的博客-CSDN博客 (3)斯坦福经典兔子的点云数据下载地址 下载地址 Model : Bunny 1.2兔子…

Git 打patch (打补丁)的使用

patch 的使用 一般是diff ,apply ,format-patch,am 1 生成patch git diff > test.patch 这个是打补丁(test.patch自己取的名字,这个命令可以看出没有指定修改的问题所以默认把所有修改的文件都打patch了,同时还需要注意,这里是本地修改的没有执行add缓存的) 如果想指定某…

[附源码]计算机毕业设计SpringBoot高血压分析平台

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

时序特征提取工具

在选择了需要提取的特征&#xff0c;确定了时序数据特征提取数据集的长度并对先验知识建模之后&#xff0c;就需要利用工具搭建特征提取系统。科研机构围绕不同问题域搭建的开源时序数据特征提取工具已经不少&#xff0c;我们可以利用这些工具快速实现希望达成的算法效果。下面…

驱动——platform驱动总线三种匹配方式

三种platform驱动匹配方式代码案例以及现象 方式一&#xff1a;通过设置名字进行匹配 相关API简介&#xff1a; 1、platform_device的API ①分配对象 struct platform_device { const char *name;//用于进行匹配的名字 int id;//总线号 PLATFORM_DEVID_AUTO&#xff08;自…

ARM cortex-A7核UART实验 收发数据

头文件&#xff1a; 1 #ifndef __UART4_H__ 2 #define __UART4_H__ 3 4 #include "../common/include/stm32mp1xx_rcc.h" 5 #include "..…

【Android App】获取照片里的位置信息及使用全球卫星导航系统(GNSS)获取位置实战(附源码和演示 超详细)

需要全部代码请点赞关注收藏后评论区留言私信~~~ 一、获取照片里的位置信息 手机拍摄的相片还保存着时间、地点、镜头参数等信息&#xff0c;这些信息由相片接口工具ExifInterface管理&#xff0c;它的常用方法说明如下&#xff1a; getLatLong&#xff1a;获取相片拍摄时候的…

【人工智能 机器学习 深度学习】基础选择题1~30题 练习

目录 一、1~10题1.1 题目1.2 答案二、11~20题2.1 题目2.2 答案三、21~30题3.1 题目3.2 答案写在前面:适用于对 人工智能&机器学习&深度学习 进行复习的同学,同时,也可以通过基础题目的练习,加深理解。 一、1~10题 均是先给出10道题目,而后给出 10道题目的答案。 …

Python用广义加性模型GAM进行时间序列分析

每当你发现一个与时间对应的趋势时&#xff0c;你就会看到一个时间序列。我们围绕广义加性模型GAM技术进行一些咨询&#xff0c;帮助客户解决独特的业务问题。研究金融市场表现和天气预报的事实上的选择&#xff0c;时间序列是最普遍的分析技术之一&#xff0c;因为它与时间有着…

关于TreeView的简单使用(Qt6.4.1)

前言 TreeView是在Qt6.3中加入的&#xff0c;弥补了Qt中无官方树图。笔者上手尝试了下&#xff0c;虽然有点麻烦&#xff0c;但官方也做了不少简化。 本次教程&#xff0c;笔者创建一个简单的示例&#xff0c;以帮助读者使用TreeView。 一、创建模型类 当前模型需要使用C定义…

婚纱预订小程序开发,商家线上展示平台

婚纱代表着纯洁与忠贞&#xff0c;也是爱情永恒的见证者&#xff0c;穿上洁白的婚纱嫁给自己心爱的人是每个女生的梦想&#xff0c;婚纱对于每一个女生来说都有着重要的意义&#xff0c;所以选择一件美丽且适合的婚纱非常重要&#xff0c;因此人们在选择婚纱时会花费很多的时间…

Web3中文|区块链游戏的成长之痛

来源 | cointelegraph 编译 | DaliiNFTnews.com 在过去十年中&#xff0c;手机游戏已成为互动娱乐产业的重要支柱&#xff0c;得益于智能手机的普及&#xff0c;来自世界各地的用户都成为了硬核游戏玩家。 现在&#xff0c;区块链技术的出现正在推动一种范式的转变&#xff…

KNN最近邻算法分析及实现(Python实现)

KNN最近邻算法分析及实现&#xff08;代码附录后文&#xff09;1 KNN算法简介2 KNN基本原理3 简单实现KNN分析代码附录(Python)&#xff1a;呆&#xff0c;站住别跑&#xff0c;留个赞&#xff0c;给个关注嘛都看到这了Author&#xff1a; Nirvana Of Phoenixl Proverbs for yo…

计算机组成原理习题课第三章-1(唐朔飞)

计算机组成原理习题课第三章-1&#xff08;唐朔飞&#xff09; ✨欢迎关注&#x1f5b1;点赞&#x1f380;收藏⭐留言✒ &#x1f52e;本文由京与旧铺原创&#xff0c;csdn首发&#xff01; &#x1f618;系列专栏&#xff1a;java学习 &#x1f4bb;首发时间&#xff1a;&…

[附源码]SSM计算机毕业设计校园疫情防控管理系统JAVA

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

网络结点中心性 Centrality

结点中心性 node centrality 被认为是度量网络结点重要性的重要指标 常见的结点中心性有以下7种&#xff1a; &#xff08;以下各中心的概念在不同地方的定义可能不同&#xff0c;实际计算应查看使用工具的具体实现&#xff09; 1、度中心性 degree centrality 常被直接称为…

Spring Security权限管理原理

1.简介 授权是更具系统提前设置好的规则&#xff0c;给用户分配可以访问某一资源的权限&#xff0c;用户根据自己所具有的权限&#xff0c;去执行相应的操作&#xff0c;spring security提供的权限管理功能主要有两种&#xff1a; 基于过滤器的权限管理功能&#xff08;Filte…

Python学习笔记-数字类型

目录 1. 数字类型 1.1 整型 1.2 浮点数 1.3 复数 1.4 布尔类型 2. 常用内置数值计算函数库 3. 随机数函数 本文记录python中的基本数字类型信息&#xff0c;以及一些其他的相关知识点。 1. 数字类型 python中用于标识数字或者数值的数据类型&#xff0c;主要有如下分类…