経緯:
p0t: コンポーネント化されたテンプレパーツMojavi Smartyでコンポーネント化されたテンプレートはどうやって作るんだろうか・・・。
悩み。
p0t: Action呼び出しプラグインテンプレ中でActionChainでパーツを呼び出す。 なんで今までこれ気づかなかったんだろ。
解決。
本題:
Webアプリのコンポーネント化されたテンプレパーツが好きだ。
他にも好きな奴がいるらしい。JSR 168にPortletなんて仕様もあった。
JSR-000168 Portlet Specification
いやいやいや、こんなメンドイやつじゃないっつーの。ロジックとテンプレ(見た目)がひとまとまりになってればなんでもいいっつーの。
前述のmojavi_actionプラグインによって解決に見えたが、あれには2つ問題があります。
- エラーが拾えない
- 遷移が出来ない
2は例えばログインのコンポーネントがあったとして、ログイン失敗したときに元の画面に遷移できない。いくつものコンポーネントが集まって一つの画面になってるのに遷移先はそのコンポーネントのみの画面に遷移しちゃうんです。
Paul Grahamの教え子(じゃない)はどうやってるのかなと思い、最近のUI的ヒットであるreddit.comを見てみました。
これのログイン枠も同じ問題を持ってるハズ!
?error=1だとinvalid loginで、
?error=2だとusername already takenかよ!!!