1. 程式人生 > 其它 >前端路由-JS實現

前端路由-JS實現

/*
*	路由源於伺服器端的概念
*	路由在服務端是URL到控制器(處理函式的對映)
*	路由在前端是URL到UI的對映
*/ 

;(function () {

	function Router(){
		this.historyStack = []; // 記錄跳轉歷史
		this.registerRouter = []; // 記錄已註冊的路由
		this.defalutRouter = {
			path: '/',
			content: 'default page!'
		}; // 路由匹配失敗時的跳轉地址
	}

	// 路由啟用
	Router.prototype.init = function() {
		
	};

	// 繫結 hashchange 事件的回撥函式
	Router.prototype._bindEvents = function(){

	}

	// 路由註冊方法
	Router.prototype.add = function(path, content){

	}

	// 判斷新增路由是否存在
	Router.prototype.isHasRouter = function(path){

	}

	// 路由不存在時的預設路由
	Router.prototype.default = function(path, content){

	}

	// 路由跳轉方法
	Router.prototype.go = function(path){

	}

	// 渲染對應路由資訊到頁面
	Router.prototype.render = function(content){

	}

	var router = new Router()
	window.$router = router; // 將介面暴露到全域性

})()