Vue-Router 详细解析学习
首先还是先创项目
然后选择vue-router 再创建
再敲代码学习前,我们先了解什么是路由?
路由有一个非常重要的概念就是路由表:
本质就是一个映射表,决定数据的指向。
我们生活中常常听到的路由器,它就是两种机制:路由和转送
·路由是决定数据包从来源到目的地的路径
·转送将输入端的数据转移到合适的输出端
我的理解就是先有个路径然后通过这个路径转送数据√√√√(大佬可以纠正我)
======================================================
项目http://localhost:8080/#/跑起来后
我们就可以了解vue-router url的变化是怎么实现让页面么有刷新的:
有两种方式:
一、通过hash值的变化
location.hash ='' home''
但是url会有个# eg:http://localhost:8080/#/home
二、通过history.pushState
为了没有#就可以用这个
history.pushState({},'','home')
pushState使用最多在于数据结构的栈结构
我的理解:相当于你压入一个地址值,先进后出,后加的就是页面显示的
三、history.replaceState()
就是替换 没法实现网页的前进后退。
四、history.go()
就是go(n)前进n次
负数就是后退n次
history.forward()==history.go(1)
============================================================
现在再component文件中创建两个vue文件一个Home、一个About;
然后为了使这两个组件起作用就在router 文件的route.js文件中配置路由;
import Vue from 'vue'
import Router from 'vue-router'
import Home from '../components/Home.vue'
import About from '../components/About.vue' //安装router插件 vue.use(插件)
Vue.use(Router) //创建VueRouter对象
const routes = [ {
path: '/home',
component: Home
},
{
path: '/about',
component: About
}
] export default new Router({
routes
})
非常的简单!!!!
然后就是让他们显示出来了
在App.vue中写个按钮 和 显示的位置占位router-view
代码如下:
<template>
<div id="app">
<router-link to="/home">首页</router-link>
<router-link to="/about">关于</router-link>
<router-view></router-view>
</div>
</template> <script>
export default {
name: 'App'
}
</script> <style>
</style>
重定向:
{
path: '/',
redirect: '/home'
},
取消url路由的# 在router对象中设置模式 mode:‘history’;
//创建VueRouter对象
const router = new Router({
routes,
mode: 'history'
})
通过代码实现跳转 :
<template>
<div id="app">
<button @click="homeClick">首页</button>
<button @click="aboutClick">关于</button>
<!-- <router-link to="/home" tag="button">首页</router-link>
<router-link to="/about" tag="button" >关于</router-link> -->
<router-view></router-view>
</div>
</template> <script>
export default {
name: 'App',
methods: {
homeClick() {
this.$router.push('/home')
},
aboutClick() {
this.$router.push('/about')
}
}
}
</script> <style>
</style>
今天就到这里吧,有点晚了!!!!!
Vue-Router 详细解析学习的更多相关文章
- Vue Router详细教程
1.什么是路由 1.1路由简介 说起路由你想起了什么?路由是一个网络工程里面的术语. 路由(routing)就是通过互联的网络把信息从源地址传输到目的地址的活动. --- 维基百科 额,啥玩意? 没听 ...
- react 详细解析学习笔记
React的介绍: React来自于Facebook公司的开源项目 React 可以开发单页面应用 spa(单页面应用) react 组件化模块化 开发模式 React通过对DOM的模拟 ...
- 打通前后端全栈开发node+vue进阶【课程学习系统项目实战详细讲解】(3):用户添加/修改/删除 vue表格组件 vue分页组件
第三章 建议学习时间8小时 总项目预计10章 学习方式:详细阅读,并手动实现相关代码(如果没有node和vue基础,请学习前面的vue和node基础博客[共10章] 演示地址:后台:demo ...
- node+vue进阶【课程学习系统项目实战详细讲解】打通前后端全栈开发(1):创建项目,完成登录功能
第一章 建议学习时间8小时·分两次学习 总项目预计10章 学习方式:详细阅读,并手动实现相关代码(如果没有node和vue基础,请学习前面的vue和node基础博客[共10章]) 视频教程地 ...
- Vue Router的导航解析过程
在我没读官方的vue router文档之前,我怎么也没想到路由的解析过程竟然有12步. 12步如下: 导航被触发. 在失活的组件里调用离开守卫beforeRouteLeave . 调用全局的 befo ...
- Vue Router 路由守卫:完整的导航解析流程
完整的导航解析流程 1 导航被触发. 2 在失活的组件里调用离开守卫. 3 调用全局的 beforeEach 守卫. 4 在重用的组件里调用 beforeRouteUpdate 守卫 (2.2+). ...
- 「进阶篇」Vue Router 核心原理解析
前言 此篇为进阶篇,希望读者有 Vue.js,Vue Router 的使用经验,并对 Vue.js 核心原理有简单了解: 不会大篇幅手撕源码,会贴最核心的源码,对应的官方仓库源码地址会放到超上,可以配 ...
- Vue Router学习笔记
前端的路由:一个地址对应一个组件 Vue Router中文文档 一.路由基本使用 第1步:导入Vue Router: <script src="https://unpkg.com/vu ...
- 前端MVC Vue2学习总结(八)——Vue Router路由、Vuex状态管理、Element-UI
一.Vue Router路由 二.Vuex状态管理 三.Element-UI Element-UI是饿了么前端团队推出的一款基于Vue.js 2.0 的桌面端UI框架,手机端有对应框架是 Mint U ...
随机推荐
- Pun(PhotonUnityNetwork)
介绍 Photon Unity Networking(首字母缩写 PUN)是一个 Unity 多人游戏插件包.它提供了身份验证选项.匹配,以及快速.可靠的通过我们的 Photon 后端实现的游戏内通信 ...
- 18、mysql读写分离实现的方法
18.1.mysql读写分离实现的方法: 1.通过程序实现读写分离: php和java程序实现读写分离(性能,效率最佳,推荐); php和java程序都可以通过设置多个连接文件轻松实现对数据库的读写分 ...
- Linux基础 -03
2.2.3 head-tail 命令 #------head #head pass #查看头部内容,默认前10行 #head -n5 pass #查看头部前5行,使用-n指定 #-------tail ...
- SpringBoot拦截器及源码分析
1.拦截器是什么 java里的拦截器(Interceptor)是动态拦截Action调用的对象,它提供了一种机制可以使开发者在一个Action执行的前后执行一段代码,也可以在一个Action执行前阻止 ...
- 消息队列——kafka
原文:再过半小时,你就能明白kafka的工作原理了 会出现什么情况呢? 1.为了这个女朋友,我请假回去拿(老板不批). 2.小哥一直在你楼下等(小哥还有其他的快递要送). 3.周末再送(显然等不及). ...
- Java:jar包与war包的差异
一般将项目分为两层:服务层和表现层(视图层),通常我们把服务层打包成jar,而把视图层的包打成war包. 仔细对比可以发现: jar包中包含了你写程序的所有服务或者第三方类库,它通常是作为幕后工作者, ...
- C++ 11 多线程初探-std::memory_order
std::memory_order(可译为内存序,访存顺序) 动态内存模型可理解为存储一致性模型,主要是从行为(behavioral)方面来看多个线程对同一个对象同时(读写)操作时(concurren ...
- 可搜索加密技术 - 学习笔记(二)- 预备知识:HMAC-SHA256函数
由于在之后的算法中会用到HMAC-SHA256函数,这里先简单对其进行一个介绍. 一.HMAC算法 什么是HMAC算法? HMAC是密钥相关的哈希运算消息认证码(Hash-based Message ...
- 「AGC021E」Ball Eat Chameleons
「AGC021E」Ball Eat Chameleons 考虑如何判定一个合法的颜色序列. 不妨设颜色序列中有 \(R\) 个红球,\(B\) 个蓝球,所以有 \(R+B=k\). 考虑分情况讨论: ...
- C语言:缓冲区
缓冲区(Buffer)又称为缓存(Cache),是内存空间的一部分.也就是说,计算机在内存中预留了一定的存储空间,用来暂时保存输入或输出的数据,这部分预留的空间就叫做缓冲区(缓存).有时候,从键盘输入 ...