路由器:路由器管理路由,VueRouter()用来创建路由器的构造函数
new VueRouter({
//多个配置项
})
路由:其实就是一种映射关系,键值对K-V
K:path
V:前台路由:组件
后台路由:处理请求的回调函数
routers:[{
//一般路由
path: '/about',
component: About
},
{ //自动跳转路由
path: '/',
redirect: '/about'
}
]
注册路由器:
import router from './router'
new Vue({
router
})
使用路由组件标签:
1.<router-link>:用来生成路由链接
<router-link to='/xxx'>Go To XXX</router-link>
2.<router-view>:用来显示当前路由组件界面
<router-view></router-view>
点击路由链接本身,并不向后台发送ajax请求,只是更新显示不同的路由组件,
但是路由组件内部可能会向后台发送ajax请求,动态获取数据
总结:编写使用路由的三步
1.定义路由组件
2.注册路由
3.使用路由:<router-link><router-view>
嵌套路由:
配置嵌套路由
routers:[{
//一般路由
path: '/about',
component: About
},
{
path: '/home', //path最左侧的/表示根路径
component: Home,
children: [{
path: '/home/news',
component: News
},
{
path: 'message', //简化写法
component: Message
},
{
path: '',
redirect: '/home/news'
}]
},
{ //自动跳转路由
path: '/',
redirect: '/about'
}
]
this有两个常用的属性,this.router
this.router:代表路由器,是一个功能的对象,里面包含了一些方法,操作路由的方法,如push(),replace(),back()等