tokuhirom's blog

Sinatra っぽく簡単に JS で Dispatch できる micro_dispatcher.js のご紹介

https://github.com/tokuhirom/micro_dispatcher.js

javascript 用のシンプルな Dispatcher にはいくつかあるが、どうも満足いくシンプルな実装がなかったのでつくった(というか Caym というオレオレ JS Framework の中にうまっていたものをとりだした)。

特徴としては、

  • Dispatcher だけのシンプルな実装(本体はやや冗長にかいていて、40行程度)
  • sinatra 的なシンプルな記法

といったところでしょうか。

使い方は以下のとおり。

 var dispatcher = new MicroDispatcher()
 dispatcher.register('/', function () { })
 dispatcher.register('/member/:name', function (name) {
   alert(name);
 })
 dispatcher.register('/download/*path', function (path) {
   alert(path);
 })
 dispatcher.register(/^\/user\/([0-9]+)$/, function (user_id) {
   alert(user_id);
 })
 dispatcher.dispatch(location.pathname);

ある程度までの Web Application では、これと jQuery だけで耐えられる気がしてきます。

Created: 2013-01-02 09:11:39 UTC
Updated: 2013-01-02 09:11:39 UTC