zoukankan      html  css  js  c++  java
  • 前端路由

    1、前端路由 : 路由是根据不同的 url 地址展示不同的内容或页面。

      参考:https://blog.csdn.net/u014168594/article/details/79181828  或  https://www.cnblogs.com/yuqing6/p/6731980.html

      注意:url前面是一样,是同一个html文件,只是后面的值不同(如果是用Hash + Ajax 实现的,后面的值一定有 # ;如果是使用H5的API具体自己设置)。

    2、前端一般是用在单页应用中的,单页应用不一定整个应用都是单页应用。往往是多页应用中,某些页面使用单页应用实现会比较好。

      比如:一个网站中(多个html),某一个html中需要滚动翻页的效果。那这个html页面可以做成单页应用。

      参考:http://webank.com/ 网站 中的 “关于我们”  和 “公告新闻” 页面都是单页应用,其它的页面并不是单页应用。

      注:url 改变的话,浏览器的前进后退功能就可以有效。即浏览器会把不同的url访问作为一个历史记录,保存在当前 浏览器页面进程中

      问题:那么 路由和单纯的hash(a标签就可以实现)实现的页面的改变有什么区别呢?

      区别主要在于使用路由,单页应用页面的跳转体验更像不同页面在跳转;而单纯的hash改变页面展示,只是展示页面的不同位置,通过滚动就可以看到哪个地方是视图。

    3、原生JS实现一个简单的前端路由(原理)  :   https://www.cnblogs.com/exhuasted/p/6839515.html

    function Router() {
        this.routes = {};
        this.currentUrl = '';
    }
    Router.prototype.route = function(path, callback) {
        this.routes[path] = callback || function(){};
    };
    Router.prototype.refresh = function() {
        this.currentUrl = location.hash.slice(1) || '/';
        this.routes[this.currentUrl]();
    };
    Router.prototype.init = function() {
        window.addEventListener('load', this.refresh.bind(this), false);
        window.addEventListener('hashchange', this.refresh.bind(this), false);
    }
    window.Router = new Router();
    window.Router.init();
    
    
    var content = document.querySelector('body');
    // change Page anything
    function changeBgColor(color) {
        content.style.backgroundColor = color;
    }
    Router.route('/', function() {
        changeBgColor('white');
    });
    Router.route('/blue', function() {
        changeBgColor('blue');
    });
    Router.route('/green', function() {
        changeBgColor('green');
    });
    View Code
  • 相关阅读:
    冒泡排序法
    选择排序法
    pyhanlp 停用词与用户自定义词典
    pyhanlp 分词与词性标注
    第八九章 正态分布与超越正态
    深入浅出统计学第七章 几何分布,二项分布,柏松分布
    深入浅出统计学 第六章 排列与组合
    深入浅出统计学 第四五章 离散概率的计算与分布
    R语言简介与案例
    深入浅出统计学 第二三章 量度
  • 原文地址:https://www.cnblogs.com/wfblog/p/9364655.html
Copyright © 2011-2022 走看看