浅谈vue-router 路由传参的方法

路由传参数。在很多时候我们需要路由上面传递参数,比如新闻列表页,我们需要传递新闻ID,给新闻详细页。

1.新闻列表页模板

rush:xhtml;">

我们访问/news/001,跳转到新闻详细页,展示001的这条新闻。

2.新闻详细页组件准备

rush:xhtml;">

$route.params.id获取路由上的参数

3.定义路由,增加一个路由

rush:js;"> { path: '/news/:id',component: NewsDetail },

4.全部代码如下:

rush:xhtml;"> <Meta charset="utf-8">
Box">

<template id="home">

<div>
  <h2><a href="https://www.jb51.cc/tag/shouye/" target="_blank" class="keywords">首页</a></h2>
   <router-link to="/home/login"&gt;<a href="https://www.jb51.cc/tag/denglu/" target="_blank" class="keywords">登录</a></router-link>
  <router-link to="/home/reg"&gt;<a href="https://www.jb51.cc/tag/zhuce/" target="_blank" class="keywords">注册</a></router-link>
  <!-- 路由匹配到的组件将渲染在这里 -->
  <router-view></router-view>
</div>

<template id="news">

新闻列表

<template id="login">

登录界面

<template id="NewsDetail">

新闻详细页面 {{$route.params.id}}

<script type="text/javascript">
// 1. 定义(路由)组件。
const Home = { template: '#home' };
const News = { template: '#news' };

const Login = { template: '#login' };
const Reg = { template: '#reg' };

//新闻详细页组件
const NewsDetail = { template: '#NewsDetail' };


// 2. 定义路由
const routes = [
   { path: '/',redirect: '/home' },{ 
    path: '/home',component: Home,children:[
      { path: '/home/login',component: Login},{ path: '/home/reg',component: Reg}
    ]
  },{ path: '/news',component: News,},{ path: '/news/:id',]

// 3. 创建 router 实例,然后传 `routes` 配置
const router = new VueRouter({
  routes // (缩写)相当于 routes: routes
})


// 4. 创建和挂载根实例。
// 记得要通过 router 配置参数注入路由,
// 从而让整个应用都有路由<a href="https://www.jb51.cc/tag/gongneng/" target="_blank" class="keywords">功能</a>
const app = new Vue({
 router
}).$mount('#<a href="https://www.jb51.cc/tag/Box/" target="_blank" class="keywords">Box</a>')

// 现在,应用已经启动了!

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程之家。

相关文章

这篇文章我们将通过debug源码的方式来带你搞清楚defineAsync...
欧阳老老实实的更新自己的高质量vue源码文章,还被某2.6k st...
前言 在Vue3.5版本中响应式 Props 解构终于正式转正了,这个...
组合式 (Composition) API 的一大特点是“非常灵活”,但也因...
相信你最近应该看到了不少介绍Vue Vine的文章,这篇文章我们...
前言 在欧阳的上一篇 这应该是全网最详细的Vue3.5版本解读文...