1)多页面模式(MPA Multi-page Application):
多页面跳转须要刷新全部资源,每一个公共资源(js、css等)需选择性从新加载
页面跳转:使用window.location.href = "./index.html"进行页面间的跳转;
数据传递:可使用path?account="123"&password=""路径携带数据传递的方式,或者localstorage、cookie等存储方式css
2)单页面模式(SPA Single-page Application): html
只有一张Web页面的应用,是一种从Web服务器加载的富客户端,单页面跳转仅刷新局部资源 ,公共资源(js、css等)仅需加载一次
页面跳转:使用js中的append/remove或者show/hide的方式来进行页面内容的更换;
数据传递:可经过全局变量或者参数传递,进行相关数据交互服务器
两种模式对比:cookie
页面模式app |
多页面模式(MPA Multi-page Application)ide |
单页面模式(SPA Single-page Application)优化 |
|
页面的组成动画 |
多个完整页面, |
由一个初始页面和多个页面模块组成, |
|
公共文件加载 |
跳转页面先后,js/css/img等公用文件从新加载 |
js/css/img等公用文件只在加载初始页面时加载,更换页面内容先后无需从新加载 |
|
页面跳转/内容更新 |
页面经过window.location.href = "./index.html"跳转 |
经过使用js方法,append/remove或者show/hide等方式来进行页面内容的更换 |
|
页面跳转/内容更新 |
可使用路径携带数据传递的方式,例如:http://index.html?account="123"&password=123456"",或者localstorage、cookie等存储方式 |
直接经过参数传递,或者全局变量的方式进行,由于都是在一个页面的脚本环境下 |
|
用户体验 |
若是单个页面加载的文件相对较大(多),页面切换加载会很慢 |
页面片断间切换较快,用户体验好,由于初次已经加载好相关文件。可是初次加载页面时须要调整优化,由于加载文件较多 |
|
适用场景 |
适用于高度追求高度支持搜索引擎的应用 |
高要求的体验度,追求界面流畅的应用 |
|
转场动画 |
不容易实现 |
容易实现 |
|
总结: 单页面模式:相对比较有优点,不管在用户体验仍是页面切换的数据传递、页面切换动画,均可以有比较大的操做空间 多页面模式:比较适用于页面跳转较少,数据传递较少的项目中开发,不然使用cookie,localstorage进行数据传递,是一件很可怕而又不稳定的无奈选择 |