温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

基于vue.js路由参数的示例分析

发布时间:2021-07-23 14:11:20 来源:亿速云 阅读:144 作者:小新 栏目:web开发

这篇文章主要介绍了基于vue.js路由参数的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

vue中,我们构建单页面应用时候,一定必不可少用到vue-router

vue-router 就是我们的路由,这个由vue官方提供的插件

首先在我们项目中安装vue-router路由依赖

第一种,我们提供命令行来安装

npm install vue-router --save

第二种,我们直接去官方github下载

https://github.com/vuejs/vue-router

路由参数设置

1,实例化一个路由,然后路由映射表中的地址带参数,这个参数就是路由的参数

接着给映射表中的路由设置一个name值

语法

{path:"/home/:id,component:home,name:"wang"}

2.当我们挂载Vue实例上去后,我们在home组件中,要获取当前路由参数

语法 this.$route.params.参数名字

3.根据当前参数不同,设置路由导航去不同的路径

<router-link :to="{name:'wang',params:{id:1}}></router-link>

下面做一个实例

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>Title</title>
</head>
<body>
<div id="app">
 <!--如果使用动态绑定,而且还有params 必须要给路由增加名字-->
 <router-link v-for="(item,index) in article" :key="index" :to="{name:'wang',params:{id:item.id}}" tag="div">{{item.title}}</router-link>
 <router-view></router-view>
</div>
</body>
<script src="node_modules/vue/dist/vue.js"></script>
<script src="node_modules/vue-router/dist/vue-router.js"></script>
<script>
 //定义一个组件
 let Article={
  template:"<div>这是第{{id}}篇</div>",
  computed:{
   id(){
    //获取路由路径的参数值
    return this.$route.params.id;
   },
   name(){
    //获取路由路径的参数值
    return this.$route.params.name;
   }
  }
 }
 //路由路径映射表
 let routes=[
  //:id表示必须传递参数,但是内容可以是随机的
  //会将当前冒号后面的值和真实传递的值组成一个对象
  // this.$route.params={id:123}
  //{path:'',component:E} //默认路由,相当于配置了一个
  //{path:'*',redirect:'/article/:1'} //默认重定向,一般用作404页面,会导致路径改变
  {path:"/article/:id",component:Article,name:'wang'}

 ]
 //实例化一个路由
 let router=new VueRouter({
  routes
 })
 router.push('/article/1'); //默认加载第一个路径设置
 let vm=new Vue({
  el:"#app",
  data:{
   article:[
    {title:"111",id:1},
    {title:"111",id:2},
    {title:"111",id:3}
   ]
  },
  router
 })
</script>
</html>

感谢你能够认真阅读完这篇文章,希望小编分享的“基于vue.js路由参数的示例分析”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI