前端框架Vue(2)——Vue-Router 路由跳转

Vue基础——(超详细)前端路由跳转(vue-router) vue-router是vue的一个插件库,专门用来实现SPA应用单页Web应用(single page web application)整个应用只有一个完整的页面点击页面中的导航链接不会刷新页面,只会做页面的局部更新数据需要通过api接口请求获取一个路由就是一组映射关系(key-value)key为路径,value可能是function或componentvue-router是vue的一个插件库,专门用来实现SPA应用,有声明式和编程式。 阅读详情

1、最简单:html+js全在一个文件中

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>动态路由匹配</title>
    <script src="https://unpkg.com/vue/dist/vue.js"></script>
    <script src="https://unpkg.com/vue-router/dist/vue-router.js"></script>
</head>
<body>
    <div id="app">
        <h1>Hello App!</h1>
        <p>
            <!-- 使用router-link 组件来导航 -->
            <!-- 通过传入 'to' 属性指定链接 -->
            <!-- <router-link>默认会渲染成一个a标签 -->
            <router-link to="/foo">GO TO FOO</router-link>
            <router-link to="/bar">GO TO BAR</router-link>
        </p>
        <!-- 路由出口 -->
        <!-- 路由匹配到的组件将会被渲染到这里 -->
        <router-view></router-view>
    </div>
<script>
    // 1、定义组件
    const Foo = {template:'<div>foo</div>'};
    const Bar = {template:'<div>bar</div>'};
    // 2、定义路由
    // 每一个路由映射一个组件
  const routes = [
    {path:'/foo',component:Foo},
    {path:'/bar',component:Bar}
  ]
    // 3、创建router实例,然后传'routes'配置
    const router = new VueRouter({
        routes
    });

    // 4、创建和挂载根实例
    const app = new Vue({
        router
    }).$mount('#app');
</script>
</body>
</html>

2、命名路由 用name属性链接地址

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>命名路由</title>
  <script src="https://unpkg.com/vue/dist/vue.js"></script>
  <script src="https://unpkg.com/vue-router/dist/vue-router.js"></script>
</head>
<body>
<div id="app">
  <h1>Hello App!</h1>
  <p>
    <!-- 使用router-link 组件来导航 -->
    <!-- 通过传入 'to' 属性指定链接 -->
    <!-- <router-link>默认会渲染成一个a标签 -->
    <router-link :to="{name:'user',params:{id:123}}">GO TO FOO</router-link>
    <router-link :to="{name:'user',params:{id:456}}">GO TO BAR</router-link>
  </p>
  <!-- 路由出口 -->
  <!-- 路由匹配到的组件将会被渲染到这里 -->
  <router-view></router-view>
</div>
<script>
  // 1、定义组件
  const Foo = {template:'<div>foo</div>'};
  const Bar = {template:'<div>bar</div>'};
  const User = {
    template:'<div>User {{$route.params.id}}</div>',
  }
  // 2、定义路由
  // 每一个路由映射一个组件


  // 3、创建router实例,然后传'routes'配置
  const router = new VueRouter({
    routes:[
      {
        path:'/user/:id',
        name:'user',
        component: User
      }
    ]
  });

  // 4、创建和挂载根实例
  const app = new Vue({
    router
  }).$mount('#app');
</script>
</body>
</html>

3、嵌套路由

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>路由嵌套</title>
  <script src="https://unpkg.com/vue/dist/vue.js"></script>
  <script src="https://unpkg.com/vue-router/dist/vue-router.js"></script>
</head>
<body>
<div id="app">
  <h1>Hello App!</h1>
  <p>
    <!-- 使用router-link 组件来导航 -->
    <!-- 通过传入 'to' 属性指定链接 -->
    <!-- <router-link>默认会渲染成一个a标签 -->
    <router-link to="/user/foo/profile">GO TO FOO</router-link>
    <router-link to="/user/bar/posts">GO TO BAR</router-link>
  </p>
  <!-- 路由出口 -->
  <!-- 路由匹配到的组件将会被渲染到这里 -->
  <router-view></router-view>
</div>
<script>
  // 1、定义组件
  /*const Foo = {template:'<div>foo</div>'};
   const Bar = {template:'<div>bar</div>'};*/
  const User = {
    template:'<div class="user">' +
    '<h2>User {{$route.params.id}}</h2>' +
    '<router-view></router-view>' +
    '</div>'
  }
  const UserProfile = {
    template:'<div>profile</div>'
  }
  const UserPosts = {
    template:'<div>posts</div>'
  }
  // 2、定义路由
  // 每一个路由映射一个组件


  // 3、创建router实例,然后传'routes'配置
  const router = new VueRouter({
    routes:[
      {path:'/user/:id',component: User,
        children:[
          {
            //当/user/:id/profile匹配成功
            //UserProfile会被渲染在User的<router-view>
            path:'profile',
            component:UserProfile
          },
          {
            path:'posts',
            component:UserPosts
          }
        ]
      }
    ]
  });

  // 4、创建和挂载根实例
  const app = new Vue({
    router
  }).$mount('#app');
</script>
</body>
</html>

4、命名视图

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>命名视图</title>
  <script src="https://unpkg.com/vue/dist/vue.js"></script>
  <script src="https://unpkg.com/vue-router/dist/vue-router.js"></script>
</head>
<body>
<div id="app">
    <h1>Hello Views!</h1>
    <ul>
      <li>
        <router-link to="/">/</router-link>
      </li>
      <li>
        <router-link to="/other">/other</router-link>
      </li>
    </ul>
    <router-view class="view one"></router-view>
    <router-view class="view two" name="a"></router-view>
    <router-view class="view three" name="b"></router-view>
</div>
<script>
  const Header = {template:'<div>头部</div>'}
  const Section = {template:'<div>中间部分</div>'}
  const Footer = {template:'<div>尾部</div>'}

  const router = new VueRouter({
      mode:'history',
      routes:[
        {
            path:'/',
            //redirect:'/other',//重定向
            components:{
                default:Header,
                a:Section,
                b:Footer
            }
        },
        {
            path:'/other',
            components:{
                default:Footer,
                a:Section,
                b:Header
            }
        }
      ]
  })

  new Vue({
      router,
      el:'#app'
  })
</script>
</body>
</html>



*当使用 Vue-cli 时如何进行 vue-router 路由跳转


如果没有使用vue-cli开发环境,请移步
http://blog.youkuaiyun.com/docallen/article/details/68490256


项目目录结构:
这里写图片描述

1、npm 安装 vue-router

cnpm install vue-router --save

2、首先建上图结构中的3个组件,写点内容即可
3、配置 router.js 文件

import Vue from 'vue'
import VueRouter from 'vue-router'
import Hello from '../component/Hello.vue'
import firstPage from '../pages/firstPage.vue'
import secondPage from '../pages/secondPage.vue'

Vue.use(VueRouter)

export default new VueRouter({
  routes:[
    {
      path:'/',
      name:'Hello',
      component:Hello
    },
    {
      path:'/first',
      name:'first',
      component:firstPage
    },
    {
      path:'/second',
      name:'second',
      component:secondPage
    }
  ]
})

4、修改 APP.vue 中的 template

<template>
  <div id="app">
    <img src="./assets/logo.png">
    <div class="nav-list">
      <router-link class="nav-item" to="/">首页</router-link>
      <router-link class="nav-item" to="/first">页面一</router-link>
      <router-link class="nav-item" to="/second">页面二</router-link>
    </div>
    <div>
      <router-view></router-view>
    </div>
  </div>
</template>

5、修改 main.js

引入router.js

import router from './router/router.js'

修改 Vue 实例

new Vue({
  el: '#app',
  router,
  render: h => h(App)
})

这里写图片描述


同时感谢 李洪威 的好文 附上链接 https://segmentfault.com/a/1190000008557578

AUTOSAR-WdgM篇 Wdg通常有两种:一种是芯片内部自带的片内看门狗,另一种是在芯片外部通过SPI这种接口连接的片外看门狗。MCAL只负责常用的有MCU内部看门狗,片内看门狗的特点是Wdg模块是直接访问相关硬件寄存器。内部看门狗依赖于系统时钟片外看门狗属于设备抽象层负责,通常需要使用MCAL提供的其他模块(比如SPI,DIO,PWM等)来访问/控制外扩看门狗芯片。这种不能直接访问硬件寄存器。Wdg Driver:有三种模式slow mode,fast mode ,off mode。 阅读详情

相关推荐

关于基于Midas Civil API的二次开发——PyMiMi

现在写了第一条博客,希望是一个好的开始,能够每天抽出一两个小时或者更多的时间来写写代码,研究研究。我发现在我的工作中存在着大量的重复性工作,对于文档的开发是好办的,毕竟网上有现成库,只需要pip一下拿来用就好,但是对于Midas而言,在24版本之前官方都是没有一个可以使用的接口的,可能mct文件算半个?

ManiacsTraitor的博客 1850

vue2的跳转路由

vue的路由跳转 准备工作 /router/index.js import VueRouter from 'Vue-router' import Vue from 'vue' Vue.use(VueRouter) const routes = [] //route对象(填写路由) const router = new VueRouter({routes}) export default router; 1.通过在$router更改 ​ vue路由路径可以通过Vue中的router对

qq_43203949的博客 7624

2025年度工业级3D全景相机技术解析选型参考:国产品牌的技术突围与市场格局

本文分析了工业级3D相机在智慧城市和建筑数字化中的应用。通过对比国内外主流设备的技术参数和应用场景,发现国产品牌如众趣科技在性价比和本地化服务方面具有优势,尤其适合大型空间扫描项目;而国际品牌如Faro、Leica则在精度和可靠性上保持领先。建议根据项目需求(如测距范围、精度要求、预算)进行设备选型,综合考虑扫描效率、数据处理能力和系统兼容性。国产品牌已在国内大型基建项目中展现出竞争力,国际品牌则更适合高精度逆向工程和国际化项目。

gxdtgsy的博客 1072

【vuejs】vue-router 路由跳转参数传递详解和应用场景及技巧

路由定义是Vue Router中实现页面路由跳转的基础。在Vue2中,路由的定义通常在应用的入口文件或路由配置文件中进行。路由定义涉及到路径模式(path)、视图组件(component)以及一些高级配置,如命名视图、重定向、别名等。 - 路由模式:路由的路径模式定义了URL的路径与组件的映射关系。例如,`{ path: '/user/:id', component: User }` 表示当URL匹配到 `/user/:id` 时,将渲染 `User` 组件,其中 `:id` 是一个动态参数。 - 组件映

工作的日常记录和平凡的生活分享 5460

uniapp+萤石视频监控实战:解决ezuikit.js真机调试不显示的5个关键步骤

本文针对Uniapp集成萤石视频监控时ezuikit.js在真机调试中黑屏不显示的问题,提供了5个关键解决步骤。核心方案是采用Webview加载独立H5播放页,以规避跨平台环境差异,并详细阐述了资源放置、多端适配、通信处理及系统化排查方法,确保视频流稳定播放。

weixin_29001655的博客 286

Zigbee开发环境搭建:从驱动安装到程序烧录全指南

本文提供了一份详尽的Zigbee开发环境搭建全指南,涵盖从驱动安装到程序烧录的完整流程。重点介绍了使用SmartRF Flash Programmer和仿真器进行程序下载的关键步骤,并详细说明了USB转串口驱动的配置方法,帮助开发者快速构建稳定的Zigbee开发基础。

weixin_29195217的博客 394

Vue路由跳转方法

生命周期函数中导入Vue Router,并且需要使用。方法相似,但是不会保留浏览器的历史记录。值得注意的是,在Vue的组件内使用。方法进行跳转,此方法和。对象时,需要先在组件的。方法进行历史记录跳转。

XUDONG93的博客 3804

OpenCV实战(1)——OpenCV与图像处理基础

OpenCV 是一个跨平台计算机视觉和机器学习库,实现了图像处理和计算机视觉方面的很多通用算法。本节将介绍 OpenCV 的基础知识,以及如何编译运行 OpenCV 程序,并介绍如何完成最基本的图像处理任务——读取、显示和保存图像。除此之外,鼠标事件和图形绘制也是 OpenCV 计算机视觉项目中常用的基本功能,本节介绍了如何使用这两个重要的 OpenCV 功能。

盼小辉丶的博客 12万+

Vue2---router(配置路径、路由跳转、相关API、多级路由、路由守卫,两种工作模式)

需求:在同一个html页面中,左边有两个跳转链接负责切换组件,右边展示不同的组件,仅以切换路由为示例。路由守卫会在用户访问某个路由之前提前进行判断检查和各种操作,确保用户已符合规定的方式访问路由。此时访问路由不会返回任何东西,并触发函数。其他与history基本没有区别。当添加token后便能正常访问。

AZURE060606的博客 5835

Modbus RTU 详解 + FreeMODBUS移植(附项目源码)

本文全面解析Modbus RTU通信协议,详细介绍其报文格式、功能码定义及典型应用场景,并手把手指导如何将FreeMODBUS协议栈移植到嵌入式平台。内容涵盖从底层硬件驱动配置、协议栈移植到主机/从机通信测试的全流程,重点讲解移植过程中的常见问题及解决方案。文章最后提供经过实测的完整项目源码,帮助开发者快速实现稳定的Modbus RTU通信功能。

Bit_Dong的博客 2926

Oracle EBS FA 如何打开关闭的资产会计期间?

用户“运行折旧”,误勾选为“关闭期间”,还有一部分资产还需要操作报废和调整,希望后台打开关闭的资产会计期。

陈显平的专栏-Oracle EBS 1029

vue2路由跳转页面

vue路由跳转,当前页面跳转和打开一个新窗口跳转

2201_75514915的博客 7257

微信小程序 - 解决web-view嵌套H5网页白屏问题,将h5网页嵌套在webview页面出现无法加载一片空白,详解微信小程序<web-view>页面跳转出现白屏情况(无论本地还是线上H5都能解决)

微信小程序解决web-view打开网页在手机上出现白屏的问题,小程序web-view嵌套H5项目白屏问题分析及解决,使用web-view组件加载H5网页链接后白屏情况,小程序嵌套的h5网页中跳转页面时也有可能出现白屏问题,嵌套webview页面时,出现白屏,WebView 加载不出网页,微信小程序<web-view>页面跳转出现白屏解决方法,解决WebView白屏空白,H5内嵌第三方小程序打开白屏,微信小程序嵌入h5页面加载空白,微信小程序web-view跳转h5白屏,解决微信小程序web-view打开网页

🏆 前端领域优质创作者 1万+

vue-router2.0的最简单的例子

vue-router2.0 工作 基础例子

kioo_i_see的博客 2057

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

vue3中路由的两种引进方式(router 和 useRouter)进行页面跳转

适用于vue3和vue2版本,可以使用在任意文件中(js文件和vue文件)在vue3中,使用在组件的带setup属性的script标签内。

蓝精灵的博客 880

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

前端应用_Vue_vue-router 用router-link代替a 标签,设置默认的路由

之前 用 a标签 ,每次都需要在href 里面添加 #, 用router-link 可以避免。 <router-link to='/login' tag="span">登录</router-link> <router-link to='/registe' tag="span">注册</router-link> 我们想设置默认路由显示指定的...

上海 彭彭 3870

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

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

vue2路由

vue2的路有非常的简单好用,假如你先学的vue2的路有再去看vue1的路有是看不懂的,所以建议学了vue2就没必要再去看vue1的路有了。 直接show代码把,有一个非常不错的demo: http://jsfiddle.net/yyx990803/xgrjzsup/ 转载于:https://www.cnblogs.com/guazi/p/6748875.html...

weixin_34162629的博客 69

vue-router 路由超详细教程

路由(英文: router)就是对应关系Hash 地址与组件之间的对应关系。vue-router是 vue.js 官方给出的路由解决方案。它只能结合 vue 项目进行使用,能够轻松的管理 SPA 项目中组件的切换。vue-router 的官方文档地址:https://router.vuejs.org/zh/2. vue-router 安装和配置的步骤① 安装 vue-router 包② 创建路由模块③ 导入并挂载路由模块④ 声明路由链接和占位符2.1在项目中安装 vue-router。

weixin_47124112的博客 4万+

vue2:安装、配置、使用前端路由vue-router

vue2:安装、配置、使用前端路由vue-router 1.查看是否已安装vue-router 首先查看package.json文件中是否已经添加了vue-router依赖: 再查看node_modules文件夹下是否有vue-router文件夹 如果有以上文件,则说明已经安装了vue-router。 一般在搭建项目时会出现是否安装vue-router这一个选项: 如果选了yes,项目搭建时...

qq_43650979的博客 1万+

前端笔记-vue cli中使用router-link进行路由跳转

目录 以前的方法 新方法 以前的方法 以前是通过router的push进行跳转,代码如下: <template> <div class="XXXXXXXXXXXXXXXXX" id="XXXXX" style=""> <div class="item"> <a><b><h1&gt...

IT1995的博客 6299

router,路由跳转(router-link,useRoute,useRouter),路由嵌套的使用

Vue router,路由调换(router-link,userRoute,userRouter),路由嵌套的使用

2203_75479159的博客 4538

Vue 页面跳转 / 路由跳转

做 Vue 开发,页面跳转是最基础也是最核心的高频需求,不管是后台管理系统还是各类业务项目,路由跳转都是实现页面切换的核心方式。Vue 作为单页面应用(SPA),核心优势就是「无刷新跳转」,页面切换流畅、体验好,这也是和传统多页面开发最大的区别之一。这篇文章会从零到一,把 Vue 路由跳转的所有用法、场景、注意事项讲透,Vue2 完全兼容、Vue3 单独标注,没有冗余内容,全是项目中能直接用到的实战写法,新手能看懂,老手能查漏补缺。

萌新程序员的博客,觉得有用的可以点点关注 3007

vue2---路由(router以及vue-router)

什么是路由路由(英文:router)就是对应关系。SPA 与前端路由SPA 指的是一个 web 网站只有唯一的一个 HTML 页面,所有组件的展示与切换都在这唯一的一个页面内完成。此时,不同组件之间的切换需要通过前端路由来实现。 什么是前端路由通俗易懂的概念:Hash 地址与组件之间的对应关系。在这里需要回顾一下瞄点(Hash)。当我们点击对应的box时候,跳转到对应的box,页面不会刷新,但是游览器会有前进后退的记录。......

厚积薄发. 7005

Vue 中的Vue Router一级路由,二级路由,三级路由以及跳转

今天编写了一下Vue中的路由 先用命令行新建一个空的项目,并且我知道要用路由,就下载了路由的相关依赖 vue init webpack demo5 完毕之后进入所在的项目 cd demo5 之后用vscode打开、引入demo5的文件夹,在vscode自带的命令行中安装依赖和启动 cnpm install cnpm run dev 之后成功启动在8080端口 要想显示导航,限...

weixin_33804582的博客 7510

Vue学习笔记-路由与页面跳转(Vue Router)

本文记录了Vue3项目中配置VueRouter实现页面跳转的过程。主要内容包括:1)安装VueRouter并创建路由配置文件;2)在main.js注册路由;3)创建Home和About两个示例页面;4)使用router-link和router-view组件实现基本跳转;5)通过useRouter实现编程式导航;6)配置动态路由获取参数;7)以TodoList为例演示实际应用。文章详细介绍了从零开始配置路由的完整步骤,并比较了不同跳转方式的使用场景,为后续实现更复杂的页面布局奠定了基础。

weixin_68913425的博客 1970

Vue2路由的使用 vue-router

对vue2中vue-router的使用,简单总结

m0_62508027的博客 5828
上一篇: 前端框架Vue(1)——vue(脚手架) 推荐开发环境(转)
下一篇: 前端框架Vue(3)—— vue.resource 、axios、ajax 异步通信
JesusAllen30
博客等级 码龄11年 225粉丝 53原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值