JSFiddle - React, Tailwind, and code Playground

by nikoshr

HTML

<script src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.3/underscore-min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/backbone.js/1.2.3/backbone-min.js"></script>
<a href='#'>home</a>
<a href='#catalog/1'>catalogPage 1</a>
<a href='#catalog/2'>catalogPage 2</a>

JavaScript

var Router = Backbone.Router.extend({
    routes: {
        ""                          : "homepage",
        "catalog/:id"               : "catalogPage"
    },
   
    route: function(route, name, callback) {
        var router = this;
        if (!callback) callback = this[name];

        var f = function() {
            console.log('route before', route);
            callback.apply(router, arguments);
            console.log('route after', route);
        };
        return Backbone.Router.prototype.route.call(this, route, name, f);
    },
    
    homepage: function() {
        console.log("homepage");
    },
    catalogPage: function(id) {
        console.log("catalogPage "+id);
    }
});

var r = new Router();
Backbone.history.start();