Vue Router动态路由使用方法总结

 更新时间:2023年10月02日 14:10:08   投稿:wdc  
这篇文章主要介绍了Vue Router动态路由使用方法总结,需要的朋友可以参考下

作用:动态拼接一些路径

语法:/user/:userId(:XX表示可以动态拼接,路径可以渲染成/user/zhangsan或者/user/lisi等等)

1.通过router-link渲染的跳转页面

通过动态绑定to属性后面跟着动态路由来跳转页面(:to="’/about/’+info")

Router-Index.js

import Vue from 'vue';
import VueRouter from 'vue-router';
Vue.use(VueRouter);
const About = () => import('../views/About.vue');
const routes = [
  {
    path: '/about/:info',
    component: About
  }
];
const router = new VueRouter({
  routes,
  mode: 'history',
  linkActiveClass: 'active'
});
export default router;

App.vue

<template>
  <div>
    <!-- 通过router-link动态路由传参 -->
    <router-link :to="'/about/'+info">About</router-link>
    <router-view></router-view>
  </div>
</template>
<script>
export default {
  name: 'App',
  data() {
    return {
      info: 'hello vuejs'
    }
  }
}
</script>
<style>
.active {
  color: #1890ff;
}
</style>

About.vue

<template>
  <div>
    <h2>About</h2>
    <!-- 可以通过($route.params.动态传参)获取数据 -->
    <p>{{ $route.params.info }}</p>
  </div>
</template>
<script>
export default {
  name: 'About'
}
</script>
<style>
</style>

2.通过普通标签渲染的跳转页面

通过this.$router.push(’/user/’ + this.userId)获取数据

Router-Index.js

import Vue from 'vue';
import VueRouter from 'vue-router';
Vue.use(VueRouter);
const User = () => import('../views/User.vue');
const routes = [
  {
    path: '/user/:userId',
    component: User
  }
];
const router = new VueRouter({
  routes,
  mode: 'history',
  linkActiveClass: 'active'
});
export default router;

App.vue

<template>
  <div>
    <!-- 通过普通button动态路由传参 -->
    <button @click="userClick">用户</button>
    <router-view></router-view>
  </div>
</template>
<script>
export default {
  name: 'App',
  data() {
    return {
      userId: 'zhangsan'
    }
  },
  methods: {
    userClick() {
      this.$router.push('/user/' + this.userId);
    }
  }
}
</script>
<style>
.active {
  color: #1890ff;
}
</style>

User.vue

<template>
  <div>
    <h2>User</h2>
    <p>{{ $route.params.userId }}</p>
  </div>
</template>
<script>
export default {
  name: 'User'
}
</script>
<style>
</style>

到此这篇关于Vue Router动态路由使用方法总结的文章就介绍到这了,更多相关Vue Router动态路由内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 解决vue组件中click事件失效的问题

    解决vue组件中click事件失效的问题

    今天小编就为大家分享一篇解决vue组件中click事件失效的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-11-11
  • 解决vue多个路由共用一个页面的问题

    解决vue多个路由共用一个页面的问题

    下面小编就为大家分享一篇解决vue多个路由共用一个页面的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-03-03
  • vue中的ref使用及说明

    vue中的ref使用及说明

    文章介绍了Vue中`ref`的的三种用法,以及`attrs`父子组件之间值传递的方法,此外,还讲解了`v-model`、`props`和`$attrs`的的使用问题,以及`sync`的的简单写法,最后提醒大家在使用这些语法糖时要确保代码的正确性和可易的性
    2026-05-05
  • 基于Vue开发一个很火的卡片动画效果

    基于Vue开发一个很火的卡片动画效果

    这篇文章主要为大家详细介绍了如何基于Vue开发一个很火的卡片动画效果,大致包含两个效果,光的跟随效果还有卡片倾斜像 3D 的效果,感兴趣的可以了解一下
    2024-02-02
  • vue-axios同时请求多个接口 等所有接口全部加载完成再处理操作

    vue-axios同时请求多个接口 等所有接口全部加载完成再处理操作

    这篇文章主要介绍了vue-axios同时请求多个接口 等所有接口全部加载完成再处理操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • vue路由权限和按钮权限的实现示例

    vue路由权限和按钮权限的实现示例

    本文主要介绍了vue路由权限和按钮权限的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-04-04
  • vue3中的抽离封装方法实现

    vue3中的抽离封装方法实现

    vue3中的任何一个组合式api都可以单独抽离出去在另一个文件,最后只需要回归到setup()中即可,这篇文章主要介绍了vue3的抽离封装方法,需要的朋友可以参考下
    2022-08-08
  • 使用vue封装一个自定义样式的滚动条

    使用vue封装一个自定义样式的滚动条

    众所周知,当容器高度固定而内容部分高度超出容器高度时,浏览器会渲染出一个可以滚动并用于显示剩余界面的条 -- 滚动条,它可以简单的样式修改,但是位置是固定的,无法移动,而我们需要改变位置的时候,它就不能满足我们的需求了,这时我们可以自己手写一个
    2023-10-10
  • Vue Mock.js介绍和使用与首页导航栏左侧菜单搭建过程

    Vue Mock.js介绍和使用与首页导航栏左侧菜单搭建过程

    Mock.js是一个模拟数据的生成器,用来帮助前端调试开发、进行前后端的原型分离以及用来提高自动化测试效率,这篇文章主要介绍了Vue Mock.js介绍和使用与首页导航栏左侧菜单搭建,需要的朋友可以参考下
    2023-09-09
  • vue3 reactive响应式依赖收集派发更新原理解析

    vue3 reactive响应式依赖收集派发更新原理解析

    这篇文章主要为大家介绍了vue3响应式reactive依赖收集派发更新原理解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-03-03

最新评论