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>