美文网首页
浏览器路由问题

浏览器路由问题

作者: Egde | 来源:发表于2017-12-16 20:11 被阅读0次

    所谓路由是单页应用SPA出现才有的概念,只请求了一次服务器获取页面,后期的交互、数据获取都是通过ajax+(模板+数据 --模板引擎--> html页面/模块)完成的(属于将资源分步加载过来了)。路由变化主要体现在URL上的hash部分,hash改变会触发浏览器window对象的onhashchange事件。

    重点!为什么使用路由?使用路由,我们不需要切换页面了(页面优化的一种方式)。所有页面的变化(路由变化)都是模块间的替换(模块化),如果是新的模块就ajax请求,否则调用内存里的模块,所有模块只会加载一次(不用频繁请求服务器)。后期维护也很方便。

    模板引擎的出现不需要我们使用js拼接页面了。模板引擎的作用就是将数据跟html模板搞一下变成一个规范的html页面/模块。

    原始使用js实现页面模块的切换:

            1,hash变化  2,模板引擎

    vue框架的vue-router其实是我们的路由配置文件,使用的时候会进行路由匹配触发hashChange传入参数与ajax请求/调用内存里的模板。如果没有路由配置文件,则     //TODO

    当然使用路由也有弊端,例如定义class样式时某一个模块的class可能会污染到另一个模块的样式,不过vue提供了使用style标签的scoped属性解决这个问题                                2017-12-16


    还有js文件依赖加载问题

    主要流程

    scope概念?依赖加载问题?

    相关文章

      网友评论

          本文标题:浏览器路由问题

          本文链接:https://www.haomeiwen.com/subject/rjnswxtx.html