vue 路由

ops/2024/10/18 23:28:13/

Vue.js 路由小结

概述

Vue.js 是一个流行的前端JavaScript框架,其中的路由功能允许我们构建单页面应用(SPA),而无需服务器端渲染。Vue Router 是官方推荐的路由管理库,它为我们提供了声明式的路由配置和导航解决方案。

基本使用

安装

首先,我们需要安装 Vue Router。在使用 Vue CLI 创建项目时,可以选择包含 Vue Router。如果已经有了 Vue 项目,可以通过 npm 安装:

 
npm install vue-router
 

创建路由

创建路由很简单,只需使用  VueRouter  对象的  routes  属性即可。例如:

 
import Vue from 'vue';
import VueRouter from 'vue-router';

Vue.use(VueRouter);

const routes = [
  { path: '/home', component: Home },
  { path: '/about', component: About },
];

const router = new VueRouter({
  routes, // (缩写) 等同于 routes: routes
});
 

使用路由

在 Vue 实例中,我们可以使用  <router-view>  组件来渲染匹配到的路由组件。然后,在我们的 HTML 模板中,我们可以使用 Vue Router 提供的导航组件,如  <router-link>  来创建链接。

 
<div id="app">
  <router-view></router-view>
</div>
 

 
<nav>
  <router-link to="/home">Home</router-link> |
  <router-link to="/about">About</router-link>
</nav>
 

进阶配置

嵌套路由

Vue Router 支持嵌套路由,这在构建复杂的应用时很有用。我们可以在一个路由中定义另一个路由,这样就可以在一个页面上展示多个子视图。

 
const routes = [
  {
    path: '/parent',
    component: ParentView,
    children: [
      { path: 'child', component: ChildView },
      { path: 'other-child', component: OtherChildView },
    ],
  },
];
 

命名路由

为了使路由更易于管理,我们可以为它们提供名称。这样,我们就可以在链接和重定向中使用这些名称,而不是硬编码路径。

 
const routes = [
  { name: 'home', path: '/home', component: Home },
  { name: 'about', path: '/about', component: About },
];
 

路由参数

我们还可以在路由中使用参数。参数使用冒号 ( : ) 标记,当匹配到一个路由时,参数值会被设置到  this.$route.params ,可以在每个组件内使用。

 
const routes = [
  { path: '/user/:username', component: User },
];

// 在组件中访问参数
this.$route.params.username;
 

通配符路由

通配符路由允许我们匹配所有路径或以特定前缀开始的路径。当使用一个通配符时, $route.params  内会自动添加一个名为  pathMatch  参数,它包含了 URL 通过通配符被匹配的部分。

 
const routes = [
  { path: '*', component: NotFoundView }, // 匹配所有路径
  { path: '/user-*', component: User }, // 匹配以 '/user-' 开头的任意路径
];
 

导航守卫

Vue Router 还提供了导航守卫,可以在路由切换之前或之后执行一些操作。我们可以使用  beforeRouteEnter ,  beforeRouteUpdate ,  beforeRouteLeave  等钩子函数来实现各种逻辑。

历史模式

Vue Router 支持两种历史模式: hash  和  history 。默认情况下,Vue Router 使用 hash 模式,URL 以  #  开头。如果我们希望使用 history API 来实现无 hash 的 URL,可以在创建 router 实例时指定  mode: 'history' 。

总结

Vue Router 为 Vue.js 提供了强大的路由管理功能,使得构建单页面应用变得简单而高效。通过灵活地配置路由、使用命名路由和路由参数、以及利用导航守卫和历史模式,我们可以轻松地管理应用的状态和导航。


http://www.ppmy.cn/ops/38909.html

相关文章

笔试强训Day15 二分 图论

平方数 题目链接&#xff1a;平方数 (nowcoder.com) 思路&#xff1a;水题直接过。 AC code&#xff1a; #include<iostream> #include<cmath> using namespace std; int main() {long long int n; cin >> n;long long int a sqrtl(n);long long int b …

【总结】CE认证详解

文章目录 CE认证 CE作用 适用范围 测试项目 一、2014/30/EU指令&#xff0c;电磁兼容&#xff08;EMC&#xff09;测试项目 二、2014/35/EU指令&#xff0c;低电压&#xff08;LVD&#xff09;测试项目 三、2011/65/EU指令&#xff0c;有害物质&#xff08;RoHS&#xff09…

linux 性能分析-负载

一、系统平均负载 1.概念 平均负载是指单位时间内&#xff0c;系统处于可运行状态和不可中断状态的平均进程数&#xff0c;也就是平均活跃进程数。它不仅包括了正在使用 CPU 的进程&#xff0c;还包括等待 CPU 和等待 I/O 的进程 它和 CPU 使用率并没有直接关系 2.负载高的场…

06.配置邮件报警

配置邮件报警 我的授权码&#xff1a;HCHNVOAENURLOACG 1.定义发件人 密码是163邮箱的授权码 2.配置收件人 我就配置收件人是qq邮箱了 3.启动动作 验证邮件发送成功

03-构建xss漏洞环境

先完成发帖的功能 1、前端代码 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><script type"text/java…

GPU云渲染平台选择应该看什么?瑞云渲染带你了解

在选择GPU云渲染平台时&#xff0c;关键的考量因素包括渲染速度、支持的软件兼容性、价格性价比以及用户服务质量。了解这些指标将帮助用户在众多选项中做出明智的选择&#xff0c;以优化渲染效率和成本效益。 一、GPU与渲染有什么关系 GPU与渲染有着密切的关系&#xff0c;在…

结合创新!通道注意力+UNet,实现高精度分割

在U-Net网络中加入通道注意力机制能显著提升模型的性能&#xff01; 具体点说是在U-Net的卷积层之后添加一个通道注意力模块&#xff0c;这样这个模块可以学习不同通道之间的权重&#xff0c;并根据这些权重对通道进行加权&#xff0c;从而增强重要通道的特征表示。 这种结合…

用户体验优化uxo指的是什么?

用户体验优化(User Experience Optimization&#xff0c;简称UXO)是一种专注于改善和提升用户在使用企业产品或服务时的整体感受和体验的过程。简单来说&#xff0c;它旨在通过改进产品或服务的设计和功能&#xff0c;使用户在使用过程中感到更加愉悦、满意和高效。用户体验优化…