vue:vue router学习小结
序:本篇内容主要侧重对前端路由的理解,以vue的官方路由作为载体,进行一个简单介绍。
一、路由历史:
最早开始的时候,项目开发使用的是SSR,即服务端渲染。这个时候刷新页面,服务器返回的是全部的html。这样有一个弊端,就是返回的数据量比较大,造成用户等待时间长,每次都要刷新全部的页面,用户体验不太好。后来有了ajax技术,这个时候就可以实现局部刷新页面了,也为前端路由的出现奠定了基础。所谓局部刷新,也就是根据页面跳转,请求该页面的数据,后台返回数据后,前端进行展示。即使数据返回前,页面也可以呈现 ,只是没有数据,不过总比空白的一张页面要好。有了ajax之后,也开始使用SPA模式来开发应用。所谓SPA,即单页面应用,这个时候就进入了组件化开发模式。随着Node.js的出现,前端开始进入模块化开发时代。
二、组件化开发
组件化开发中,一般一个组件对应一个页面。一个应用中至少有一个以上的页面,那么如何在这些页面中进行跳转呢?不同的页面对应不同的链接,或者说URL,这样就可以实现通过链接到不同URL,来实现跳转不同的页面。URL即是对具体业务页面的映射。这个时候,把这一整套页面跳转的机制称为路由。即,给浏览器不同的URL,浏览器给出这个URL映射到的页面。
三、实现方式:
在当前单页面应用中,路由的具体实现有两种方式。一个是History API,一个是“#”。History API需要后端进行配合,哈希则不需要。简单来说路由就是用来跟后端服务器进行交互的一种方式,通过不同的路径,来请求不同的资源,请求不同的页面是路由的其中一种功能。
参考:
https://segmentfault.com/a/1190000007238999
vue:vue router学习小结的更多相关文章
- vue之router学习笔记
1.动态路由匹配 我们经常需要将具有给定模式的路线映射到同一个组件.例如,我们可能有一个User应该为所有用户呈现但具有不同用户ID的组件.在vue-router我们可以在路径中使用动态段以实现: c ...
- Vue学习小结(二)
接上一批,小结(二). 三.导航内容(含左侧导航及顶部面包屑导航) 其实导航条主要根据element-ui的教程进行编写,官网:http://element-ui.cn/#/zh-CN/compone ...
- 四 Vue学习 router学习
index.js: 按需加载组件: const login = r => require.ensure([], () => r(require('@/page/login')), 'log ...
- Vue学习笔记-Vue.js-2.X 学习(七)===>脚手架Vue-CLI(路由Router)
脚手架Vue-CLI(路由Router) 一 按装(通过新创建脚手架按装),如果在原来的脚手架上按装直接进图型化界面vue ui的插件按装. 二 使用(上面按装下面步骤自动会生成) 第一步:导入路由对 ...
- vue的路由设置小结
vue的路由设置小结 // 异步路由的编写示例.其中针对component字段进行懒加载及分块处理,提升首屏加载速度的同时,也可以手动控制让某些页面合并到一个单独的js文件中,而不是每个页面都是一个j ...
- Vue 5小时学习小教程
Vue Vue Vue 起步 指令 v-bind v-if v-for v-on v-model v-bind和v-on缩写 搭建Vue开发环境 vue项目结构 Vue开始 数据绑定, 绑定属性 循环 ...
- vue - blog开发学习1
1.安装vue-cli vue intall -g vue-cli 2.创建项目 vue init webpack nblog 3.按提示要求配置项目 ? Project name nblog ? P ...
- Vue学习笔记-Vue.js-2.X 学习(四)===>脚手架Vue-CLI(基本工作和创建)
(五) 脚手架Vue-CLI 一 Vue-CLI前提(nodejs和webpack) 二 Vue学习-nodejs按装配置,Node.js 就是运行在服务端的 JavaScript. 1. 去nod ...
- vue 和 react 学习 异同点
vue 和 react 学习 异同点 本文不做两个框架比较,只对比了两个框架的语法对比,不代表任何观点,盗版必究,本人唯一qq:421217189 欢迎大家一起来学习探讨,壮我大前端(本文markdo ...
随机推荐
- php微信公众号开发简单记录
开发前准备:1.服务器 2.微信公众号测试号(有真实的账号更好) 测试号申请地址:https://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/lo ...
- 小程序组件交互 -- 传入js
1.父组件(wxml页面)向子组件传递 在子组件中定义需要传入的属性 properties: { count: { type: Number, value: 0, observer:function( ...
- vue框架学习笔记1
vue1-2:MVVM M:Model 数据模型,负责数据存储 V:View 视图,负责页面的显示 VM:View Model 负责业务处理,对数据进行加工,之后交给视图 下载地址: <!--中 ...
- Jmeter_拦截Excel文件输出流到本地
一般而言,对于页面的“导出”操作,主要经历如下两个操作:①根据数据库的内容,将文件导出到应用服务器上:②将服务器上的文件下载到本地电脑: Jmeter同LoadRunner类似,只能记录服务端与客户端 ...
- tomcat mamcached session共享方法
下载后输入命令安装命令: c:\memcached\memcached.exe -d install 然后再输入如下命令把其作为win service常驻启动: c:\memcached\memcac ...
- 练习三十八:矩阵for循环应用
习题如下: 求一个3*3矩阵对角线元素之和 利用for循环控制输出二维数组,再将a[i][j]累加后输出 a = [] sum1 = 0.0 for i in range(3): a.append([ ...
- Java面向对象_常用类库api
StringBuffer 例: public class StringBufferDemo { /** * @param args */ public static void main(String[ ...
- (转)linux正则表达式详解
linux正则表达式详解 http://blog.csdn.net/wuliowen/article/details/64131815 1:什么是正则表达式: 简单的说,正则表达式就是处理字符串的方法 ...
- git merge的参数--squash的用处
本地分支处理问题的过程中一般都是commit在本地分支,当验证完毕后就需要merge到baseline上. 在不懂merge的--squash这个参数前,我一般是这么操作的: 1.在本地分支" ...
- cocos
cocos compile -p android --android-studio --app-abi=armeabi-v7a ./adb kill-server&& ./adb se ...