8、路由【前端实现页面的跳转】
路由router
一、说明
学习的时候,尽量的打开官方的文档
Vue Router 是 Vue.js 官方的路由管理器。它和 Vue.js 的核心深度集成,让构建单页面应用变得易如反掌。包含的功能有:
- 嵌套的路由/视图表
- 模块化的、基于组件的路由配置
- 路由参数、查询、通配符
- 基于 Vue.js 过渡系统的视图过渡效果
- 细粒度的导航控制
- 带有自动激活的 CSS class 的链接
- HTML5 历史模式或 hash 模式,在 IE9 中自动降级
- 自定义的滚动条行为
二、router的安装
vue-router 是一个插件包,所以我们还是需要用 npm/cnpm 来进行安装的。打开命令行工具,进入你的项目目录,输入下面命令:
# 这里我是使用idea控制台使用命令行进行安装的 # cnpm install vue-router --save-dev
验证:查看node_modules中是否存在 vue-router
三、router的跳转
1、在component目录下编写vue组件
删除我们不需要的组件
创建Some.vue跟Main.vue两个组件
Main.vue:
<template> <div> <h1>首页</h1> </div> </template> <script> // 路由的导出 export default { name: "Main" } </script> <style scoped> </style>
Some.vue:
<template> <div> <h1>内容页</h1> </div> </template> <script> // 路由的导出 export default { name: "Some" } </script> <style scoped> </style>
2、管理路由,在src目录下,新建一个文件夹 : router,专门存放路由
index.js:路由的主配置文件
/*配置路由*/ import Vue from 'vue' // 导入路由插件 import Router from 'vue-router' // 导入上面定义的组件 import vueSome from '../components/Some' import vueMain from '../components/Main' // 安装路由 Vue.use(Router); // 配置路由 export default new Router({ routes: [ { // 路由请求路径 path: '/some', // 路由名称,可以省略不写 name: 'some', // 跳转到组件 component: vueSome }, { // 路由请求路径 path: '/main', // 路由名称,可以省略不写 name: 'main', // 跳转到组件 component: vueMain } ] });
3、在main.js中配置路由
import Vue from 'vue' import App from './App' // 导入上面创建的路由配置目录 import router from './router/index' //来关闭生产模式下给出的提示 Vue.config.productionTip = false; new Vue({ el: '#app', // 配置路由 router, components: { App }, template: '<App/>' });
4、在app.vue中使用路由
<template> <div id="app"> <!-- router-link: 默认会被渲染成一个 <a> 标签,to 属性为指定链接 router-view: 用于渲染路由匹配到的组件 --> <h1>WelCome!</h1> <router-link to="/main">首页</router-link> <router-link to="/some">内容</router-link> <router-view></router-view> </div> </template> <script> export default { name: 'App' } </script> <style> #app { font-family: 'Avenir', Helvetica, Arial, sans-serif; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; text-align: center; color: #2c3e50; margin-top: 60px; } </style>
5、启动程序
npm run dev