vue-router(v4.0) 基础2

  1. 路由跳转

    1. 核心代码

      import { useRouter,useRoute } from 'vue-router';
      const $router = useRouter()
      const $route = useRoute()
      const toAbout = () => {console.log($router)$router.push('/about/888')
      }
    2. 全部代码

      1. 常量路由

        export const constantRoute = [{path: '/about/:id',component:()=> import('../vue-base/about1.vue')},{path: '/',component:()=> import('../vue-base/home.vue')},{path: '/about',component:()=> import('../vue-base/about.vue')},{ path: '/:pathMatch(.*)*', name: 'NotFound', component: ()=>import('../vue-base/404.vue') },]
      2. home.vue

        <template><div><h1>我是home</h1><router-link to="/about/123">Go to about1</router-link><br><button @click="toAbout">点我前往About页面</button></div>
        </template><script setup lang="ts">
        import { useRouter } from 'vue-router';
        let $router = useRouter()
        const toAbout = () => {console.log($router)$router.push('/about')
        }
        </script><style scoped></style>
      3. about.vue

        <template><div><h1>about</h1><router-link to="/home">Go to Home</router-link><br><button @click="toAbout">点我前往About1页面</button></div>
        </template><script setup lang="ts">
        import { useRouter,useRoute } from 'vue-router';
        const $router = useRouter()
        const $route = useRoute()
        console.log($route)
        const toAbout = () => {console.log($router)$router.push('/about/888')
        }
        </script><style scoped></style>
      4. about1.vue

        <template><div>home1<br><button @click="toHome">点我也可以前往Home页面</button><h1>{{  params}}</h1></div>
        </template><script setup lang="ts">
        import { useRouter,useRoute } from 'vue-router';
        import { ref,computed } from 'vue';
        let params = ref()
        const $router = useRouter()
        const $route = useRoute()
        console.log($route)
        params.value = computed(()=> Number($route.params.id)
        )
        const toHome = () => {console.log($router)$router.push('/')
        }
        </script><style scoped></style>
      5. 效果

        1. home

        2. about

        3. about1

        4. 404

           

  2. 带参数的动态路由匹配

    1. 核心代码
      export const constantRoute = [{path: '/about/:id',component:()=> import('../vue-base/about1.vue')},
      ]
    2. 匹配途径

  3. 404路由

    1. 核心代码
      export const constantRoute = [{ path: '/:pathMatch(.*)*', name: 'NotFound', component: ()=>import('../vue-base/404.vue') },
      ]
  4. 嵌套路由

    1. 核心代码
      export const constantRoute = [{path: '/about/:id',component:()=> import('../vue-base/about1.vue'),redirect:'/about/:id/AboutChildren1',children:[{path:'AboutChildren1',component:()=>import('../vue-base/aboutChildren1.vue')},{path:'AboutChildren2',component:()=>import('../vue-base/aboutChildren2.vue')}]}
      ]
    2. about1.vue
      <template><div>about1<br><button @click="toHome">点我也可以前往Home页面</button><h1>{{  params}}</h1><button @click="toAboutChildren">点我可以前往AboutChildren页面</button><router-view></router-view></div>
      </template><script setup lang="ts">
      import { useRouter,useRoute } from 'vue-router';
      import { ref,computed } from 'vue';
      let params = ref()
      const $router = useRouter()
      const $route = useRoute()
      console.log($route)
      params.value = computed(()=> Number($route.params.id)
      )
      const toHome = () => {console.log($router)$router.push('/')
      }
      const toAboutChildren = ()=>{$router.push('/about/8888/AboutChildren1')
      }</script><style scoped></style>
    3. aboutChildren1.vue
      <template><div><h1>我是AboutChildren1</h1><br><router-link to="/"></router-link></div>
      </template><script setup lang="ts"></script><style scoped></style>
    4. aboutChildren2.vue
      <template><div><h1>我是AboutChildren2</h1><br><router-link to="/"></router-link></div>
      </template><script setup lang="ts"></script><style scoped></style>
    5. 效果
      1. about
      2. aboutChildren1
      3. aboutChildren2

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

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

相关文章

Java编程——赌数游戏

/** 赌数游戏提供三个1-6的随机数&#xff0c;作为掷骰子得到的点数。如果各个点数相同&#xff0c;则为豹子。如果三个骰子点数和&#xff0c;小于或等于9&#xff0c;则为“小”。如果三个骰子点数和&#xff0c;大于9&#xff0c;则为“大”。用户随机选择&#xff1a;押大…

Java开发从入门到精通(八):Java的面向对象编程OOP:封装、继承、多态

Java大数据开发和安全开发 &#xff08;一&#xff09;Java的封装1.1 什么是封装1.1.1 封装的设计规范1.1.2 代码层面如何控对象的成员公开或隐藏? 1.2 JavaBean(实体类)1.2.1创建实体类1.2.2 实体类有啥应用场景?1.2.3 实体类总结 1.3 继承1.3.1 继承的语法格式1.3.2 继承的…

Stompy:一款针对时间戳的Timestomp工具

关于Stompy Stompy是一款功能强大的时间戳管理工具&#xff0c;在该工具的帮助下&#xff0c;广大研究人员能够轻松对指定文件或目录的时间戳进行修改和操作。该工具基于PowerShell开发&#xff0c;并且支持对目标目录中的所有文件执行递归时间戳操作。 功能介绍 1、修改独立…

【问题记录】自定义Prometheus exporter收集数据,Prometheus显示收集到数据,grafana未显示数据出来

问题背景&#xff1a; 使用golang编写Prometheus exporter&#xff0c;获取指定API Url返回值中的data值&#xff0c;把它做为自定义指标。 1、exporter 500ms自动更新一次data值 2、Prometheus的Graph界面输入自定义指标可以查询到值的变化 3、自定义指标最小时间是ms级别&…

IDEA中的Project工程、Module模块的概念及创建导入

1、IDEA中的层级关系&#xff1a; project(工程) - module(模块) - package(包) - class(类)/接口具体的&#xff1a; 一个project中可以创建多个module一个module中可以创建多个package一个package中可以创建多个class/接口2、Project和Module的概念&#xff1a; 在 IntelliJ …

【渗透工具】Chrome配置BurpSuite代理教程

工具安装教程 【渗透工具】BurpSuite汉化无cmd框版安装教程 配置代理教程 1、配置Burp代理为127.0.0.1:8080 2、扩展商店添加插件switchyomega&#xff0c;修改服务器和端口为下图&#xff1a; 3、打开代理&#xff0c;选择刚才添加的代理 4、访问 http://burp/ &#xff0c…

通过nginx+xray服务搭建及本地配置

一、xray服务配置 下载&#xff1a;https://github.com/XTLS/Xray-core 进入下载界面 这里我选择的是Xray-linux-64.zip 将文件解压到 /usr/local/xray 编辑配置文件/usr/local/xray/config.json uuid可以在v2ray客服端自动生成&#xff0c;也可以在UUID v4 生成器 - KKT…

Python 自然语言处理库之stanza使用详解

概要 在自然语言处理(NLP)领域,Python Stanza 库是一个备受推崇的工具,它提供了强大的功能和易用的接口,帮助开发者处理文本数据、进行语言分析和构建NLP应用。本文将深入探讨 Stanza 库的特性、用法,并通过丰富的示例代码展示其在实际项目中的应用。 Stanza 简介 Stan…

视频桥接芯片#LT8912B适用于MIPIDSI转HDMI+LVDS应用方案,提供技术支持。

1. 概述 Lontium LT8912B MIPI DSI 转 LVDS 和 HDMI 桥接器采用单通道 MIPI D-PHY 接收器前端配置&#xff0c;每通道 4 个数据通道&#xff0c;每个数据通道以 1.5Gbps 的速度运行&#xff0c;最大输入带宽高达 6Gbps。 对于屏幕应用&#xff0c;该桥接器可解码 MIPI DSI 18bp…

四川尚熠电子商务有限公司抖音电商领域的黑马

在当今数字化时代&#xff0c;电子商务行业日新月异&#xff0c;抖音电商作为新兴的电商形式&#xff0c;正逐渐展现出其强大的市场潜力。四川尚熠电子商务有限公司&#xff0c;正是这一浪潮中的佼佼者&#xff0c;以其专业的抖音电商服务&#xff0c;赢得了广大消费者的信赖和…

springboot日志配置文件log4j2.xml

<?xml version"1.0" encoding"UTF-8"?><Configuration status"WARN" monitorInterval"0"><!-- 配置公共的有可能调整的变量 --><Properties><!--应用名称--><property name"APP.NAME"&g…

好书推荐 《ARM汇编与逆向工程 蓝狐卷 基础知识》

《ARM 汇编与逆向工程 蓝狐卷 基础知识》 与传统的 CISC&#xff08;Complex Instruction Set Computer&#xff0c;复杂指令集计算机&#xff09;架构相比&#xff0c;Arm 架构的指令集更加简洁明了&#xff0c;指令执行效率更高&#xff0c;能够在更低的功耗下完成同样的计…

Windows Server 各版本搭建远程访问 / VPN 服务器实现 VPN 连接(03~19)

一、Windows Server 2003 开机后点击添加或删除角色 点击下一步 勾选自定义&#xff0c;点击下一步 点击 远程访问/VPN 服务器&#xff0c;点击下一步 点击下一步 点击下一步 勾选自定义&#xff0c;点击下一步 选择配置类型&#xff0c;点击下一步 点击完成 点击是 点击完成…

SOLIDWORKS Electrical布线方框图绘图技巧

今天我们来学习SOLIDWORKS Electrical布线方框图的绘图方法和技巧&#xff0c;布线方框图是一个方案性的示意图&#xff0c;预规划设计时可提前选型并简单表示连接关系。它可以用较简单的符号或带有文字的方框&#xff0c;简单明了地表示电路系统最基本的结构和组成&#xff0c…

如何从MP4视频中提取gif?一键在线提取gif

在现代社交媒体和通信平台上&#xff0c;GIF已经成为一种非常流行的图像格式。GIF图像以其短小精悍的特点&#xff0c;能够循环播放动画&#xff0c;因此在表达情感、分享趣味和传达信息方面非常受欢迎。如果你想从一个MP4视频中提取一个有趣的GIF图像&#xff0c;可以使用视频…

突破编程_前端_ACE编辑器(概述)

1 ACE 框架简介 ACE 框架是一个强大且灵活的前端文本编辑器框架&#xff0c;它提供了一套全面的 API 和丰富的功能&#xff0c;使得开发者能够轻松地在 Web 应用中集成功能强大的代码编辑器。ACE 编辑器不仅适用于在线代码编辑&#xff0c;还广泛应用于文档编辑、实时协作、富…

面试算法-52-对称二叉树

题目 给你一个二叉树的根节点 root &#xff0c; 检查它是否轴对称。 示例 1&#xff1a; 输入&#xff1a;root [1,2,2,3,4,4,3] 输出&#xff1a;true 解 class Solution {public boolean isSymmetric(TreeNode root) {return dfs(root, root);}public boolean dfs(Tr…

mysql的学习笔记

干前端好几年了,只会前端总感觉少了条腿,处处不自在,决定今年学习下后端的东西.以前总想着学node会更快,但是实际工作上却用不上. 出来混,总是要还的,该学的javaWeb这一套体系的东西,总是需要学习的. 那就开始啦. 一,在本地电脑mac上安装mysql 这个参考的这篇文章,照着做一次…

02_设计模式

文章目录 设计模式设计模式分类UML类图设计模式的原则 常用设计模式创建型设计模式单例设计模式饿汉模式懒汉模式&#xff08;线程不安全&#xff09;懒汉模式&#xff08;线程安全&#xff09;- Synchronized懒汉模式&#xff08;线程安全&#xff09;- Double Check懒汉模式&…

出彩不停息!创维汽车SKYHOME又获国际大奖

祝贺&#xff01;创维汽车SKYHOME又获国际缪斯设计大奖&#xff01;进一步获得国际认可&#xff01; 卓越的意识、优秀的审美、无与伦比的专注&#xff0c;不仅是缪斯奖所看重的独特品质&#xff0c;也是SKYHOME设计团队在传递品牌故事中所秉持的优秀品格。作为缪斯奖青睐的设计…