11.1、说明
学习的时候,尽量的打开官方的文档
Vue Router是Vue.js官方的路由管理器。它和Vue.js的核心深度集成, 让构建单页面应用变得易如反掌。包含的功能有:
- 嵌套的路由/视图表
- 模块化的、基于组件的路由配置
- 路由参数、查询、通配符
- 基于Vue js过渡系统的视图过渡效果
- 细粒度的导航控制
- 带有自动激活的CSS class的链接
- HTML5 历史模式或hash模式, 在IE 9中自动降级
- 自定义的滚动行为
11.2、安装
基于第一个vue-cli进行测试学习; 先查看node modules中是否存在vue-router
vue-router是一个插件包, 所以我们还是需要用n pm/cn pm来进行安装的。打开命令行工具,进入你的项目目录,输入下面命令。
npm install vue-router --save-dev
如果在一个模块化工程中使用它,必须要通过Vue.use()明确地安装路由功能:
importVuefrom'vue'importVueRouterfrom'vue-router'Vue.use(VueRouter);
11.3、测试
1、先删除没有用的东西
2、components 目录下存放我们自己编写的组件
3、定义一个Content.vue 的组件
<template><div><h1>内容页</h1></div></template><script>exportdefault { name:"Content" } </script>
Main.vue组件
<template><div><h1>首页</h1></div></template><script>exportdefault { name:"Main" } </script>
4、安装路由,在src目录下,新建一个文件夹:router,专门存放路由,配置路由index.js,如下
importVuefrom'vue'//导入路由插件importRouterfrom'vue-router'//导入上面定义的组件importContentfrom'../components/Content'importMainfrom'../components/Main'//安装路由Vue.use(Router) ; //配置路由exportdefaultnewRouter({ routes:[ { //路由路径path:'/content', //路由名称name:'content', //跳转到组件component:Content },{ //路由路径path:'/main', //路由名称name:'main', //跳转到组件component:Main } ] });
5、在main.js中配置路由
importVuefrom'vue'importAppfrom'./App'//导入上面创建的路由配置目录importrouterfrom'./router'//自动扫描里面的路由配置//来关闭生产模式下给出的提示Vue.config.productionTip=false; newVue({ el:"#app", //配置路由router, components:{App}, template:'<App/>'});
6、在App.vue中使用路由
<template><divid="app"><!--router-link:默认会被渲染成一个<a>标签,to属性为指定链接router-view:用于渲染路由匹配到的组件--><router-linkto="/">首页</router-link><router-linkto="/content">内容</router-link><router-view></router-view></div></template><script>exportdefault{ name:'App' } </script><style></style>