vue-router是vue的核心插件之一,要好好理解牢记
前端路由的概念
路由其实分两种,一种前端路由,一种是后端路由。先谈谈后端,在我做的koa2中,没有使用任何前端框架,只是用了ejs模板。所有的页面跳转都是后端完成的,这就带来一个问题,频繁的后端渲染实际对性能有损害。所以前端路由就出现了,在vue中,页面的跳转都是又前端完成的,后端只在第一页面刷新时使用。所以后端路由的本质就是浏览器和服务器之间搞事情;而前端路由的本质则是用户与浏览器搞事情
通过获取网页的hash值实现简单的路由
window.onhashchange=function(){
//通过window.onhashchange事件使用location.hash获取当前hash值
// C:\\..xxx..xxx..xx.html#/获取hash值
console.log(location.hash) // #/获取hash值
}
接下来就可以通过获取的hash值去判断应该显示哪儿一个页面,路由也就很容易做出来了
Vue Router
以下都是基于vue router
路由重定向
先说说什么是路由重定向,意思就是当一个用户访问a页面,此时希望能够强制跳转到b页面
let router=new VueRouter({
//定义路由
routes:[
//当用户访问根页面,通过redirect属性强制跳转到user页面
{
path:"/",redirect:"/user"}
// 当跳转到user页面后,展示User组件,当然这个组件是在此之前定义好了的
{
path:"/user",component:User}
]
})
简单使用vue-router
一个小案例,可以通过点击登录、注册跳转到不同的页面展示不同的组件。经过实验发现,使用router-link必须要接着to属性,不然不会显示router-link这个标签