1、认识路由vue-router 基本使用vue-router 嵌套路由vue-router 参数传递vue-router 导航守卫keep-alive2、什么是前端渲染,什么是后端渲染1)后端渲染jsp:java server page后端路由阶段:早期的网站开发,整个HTML...
1、认识路由
vue-router 基本使用
vue-router 嵌套路由
vue-router 参数传递
vue-router 导航守卫
keep-alive
2、什么是前端渲染,什么是后端渲染
1)后端渲染
jsp:java server page
后端路由阶段:
早期的网站开发,整个HTML页面是由服务器来渲染的
服务器直接生产好对应的html页面,返回给客户端进行显示
2)前后端分离阶段
3)单页面富应用阶段
spa
其实 SPA 最主要的特点就是在前后端分离的基础上加了一层前端路由
也就是由前端来维护一套规则
3、url的hash 和 HTML5的history
1、URL的hash
URL的hash 也就是锚点,本质上是改变window.location的href属性
我们可以通过直接复制location.hash 来改变href,但是页面不发生刷新
当清空network,并且在开发者模式中输入:location.hash='aaa',可以看到url改变了,而且network中并没有请求资源
2、HTML5的history
history.pushState({},'','home')
history.back() 返回上一层,等价于 go(-1)
history.replaceState({},'','home') : 不能后退
history.go(num) 当前页面前进、后退num个记录
history.foword() 等价于 go(1)
4、安装和使用vue-router
1、安装 vue-router
npm install vue-router –save
2、在模块化工程中使用vue-router
①、在router文件下的index.js文件中,导入路由对象,并且调用Vue.use(VueRouter)
import VueRouter from 'vue-router' import Vue from 'vue' //1、通过Vue.use(插件),来安装插件 Vue.use(VueRouter)
②、创建路由实例,并且传入路由映射配置
//2、创建 VueRouter对象 const routers = [ ] const router = new VueRouter({ //配置路由和组件之间的映射关系 routers })
③、在index.js中导出router,在Vue实例中挂载创建的路由实例
3、使用vue-router
①、创建路由组件
②、配置路由的映射关系
③、使用 <router-link>和 <router-view>
【备注】
router文件夹下的 index.js
//配置路由的相关信息 import VueRouter from 'vue-router' import Vue from 'vue' import Home from '../components/Home' import about from '../components/about' //1、通过Vue.use(插件),来安装插件 Vue.use(VueRouter) //2、创建 VueRouter对象 const routes = [ { path: '', // redirect重定向 redirect: '/home' }, { path: '/home', component: Home }, { path: '/about', component: About } ] const router = new VueRouter({ //配置路由和组件之间的映射关系 routes //默认是hash模式 }) //3、将router对象传入到Vue对象中 export default router 5、路由的默认路径 const routes = [ { path: '', // redirect重定向 redirect: '/home' //默认显示Home组件 }, { path: '/home', component: Home }, { path: '/about', component: About } ]
5、路由的默认路径
const routes = [ { path: '', // redirect重定向 redirect: '/home' //默认显示Home组件 }, { path: '/home', component: Home }, { path: '/about', component: About } ]
将url的跳转改成history模式
const router = new VueRouter({ //配置路由和组件之间的映射关系 routes, mode: 'history' })
router-link其他属性详解
tag = “button" 将router-link渲染成button
<router-link to="/home" tag="button">首页</router-link>
replace:不能使用浏览器的返回功能
<router-link to="/home" tag="button" replace>首页</router-link>
通过代码跳转路由
<template> <div id="app"> <!--<router-link to="/home" tag="button" replace>首页</router-link> <router-link to="/about" tag="button" replace>关于</router-link>--> <button @click="homeClick">首页</button> <button @click="aboutClick">首页</button> <router-view/> </div> </template> <script> export default { name: 'App', methods: { homeClick(){ //通过代码的方式来修改路由 this.$router.push('/home') }, aboutClick(){ //通过代码的方式来修改路由 this.$router.push('/about') } } } </script>
本文标题为:Vue Router(一)
- javascript 判断当前浏览器版本并判断ie版本 2023-08-08
- layui数据表格以及传数据方式 2022-12-13
- ajax实现输入提示效果 2023-02-14
- 基于CORS实现WebApi Ajax 跨域请求解决方法 2023-02-14
- jsPlumb+vue创建字段映射关系 2023-10-08
- JS实现左侧菜单工具栏 2022-08-31
- 关于 html:如何从 css 表中删除边距和填充 2022-09-21
- vue keep-alive 2023-10-08
- 1 Vue - 简介 2023-10-08
- 深入浅析AjaxFileUpload实现单个文件的 Ajax 文件上传库 2022-12-15