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();
Router.route('/', function() {
console.log('home');
});
Router.route('/about', function() {
console.log('about');
});
Router.route('/about/test', function() {
console.log('about_test');
});
hash模式实现前端路由
最新推荐文章于 2024-08-05 09:06:01 发布