1.路由原理
Vue路由是指根据url分配到对应的处理程序;作用就是解析URL,调用对应的控制器(的方法,并传递参数)。Vue路由有助于在浏览器的URL或历史记录与Vue组件之间建立链接,从而允许某些路径渲染与之关联的任何一个视图。
2.路由实现方式
(1)导入路由包
(2)创建子组件
(3)创建一个路由对象
(4)在父组件中注册路由
3.实现代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script src="./lib/vue.min.js"></script>
<!--1.导入包-->
<script src="./lib/vue-router.js"></script>
</head>
<body>
<div id ="app">
<router-link to="/login">登录</router-link>
<router-link to="/register">注册</router-link>
<!--容器-->
<router-view></router-view>
</div>
<script>
//2.创建子组件
var login = {
template: '<h3>这是登录子组件</h3>'
}
var register = {
template: '<h3>这是注册子组件</h3>'
}
//3.创建一个路由对象
var router = new VueRouter({
routes:[//路由规则数组
{ path: '/', redirect: '/login'},
{ path: '/login', component: login },
{ path: '/register', component: register },
],
linkActiveClass: 'myactive' //和激活相关的类
})
//创建Vue实例,得到 ViewModel
var vm = new Vue({
el: '#app',
data: {},
methods: {},
router
});
</script>
</body>
</html>
4.执行结果
点击登录,浏览器中的地址会变成#/login,同时切换到登录子组件
点击注册,浏览器中的地址会变成#/register,同时切换到注册子组件