blog.bouzuya.net

2016-02-17 bouzuya/virtual-dom-ssr を client-side routing に対応した

先週 2016-02-14bouzuya/virtual-dom-ssr へ client-side routing 対応を加えたことを書く。

今回の対応は client / server での routing の共有したいという話の続きだ。それらの話は次の記事に書いている。

  • 2016-02-01 path-to-regexp の検証
  • 2016-02-05 virtual-dom-ssr の server-side に path-to-regexp を導入

今回は virtual-dom-ssr の client-side に path-to-regexp を導入した。

実装は https://github.com/bouzuya/virtual-dom-ssr/commit/6c375c684199321cbeef4658a4231a30d57a2072 あたりを参照すると良い。

とりあえず History API を使って browser の back button に対応している。path と handler の pair を config として保持する。 go / back の際に config に従い path-to-regexp で判定して handler を呼び出す。

handler を呼び出してその結果を返すという構造に不安を感じる。

また History API まわりは自前で実装せずに reactjs/history などの wrapper を使ったほうが良さそう。