2011-02-06 10 views
11

私はBackbone.jsを手に入れようとしています。私が処理しようとしている問題の1つは、バックボーンでコントローラを効果的に使用する方法です。コントローラとBackbone.jsのアプリケーションレベルの表示

コントローラが後でフレームワークに追加され、ブラウザとDOMが設定されているという理由だけで、ビューにはかなりの量のコントローラロジックが含まれていることに気付きました。また、BackboneのWebサイトのTODOリストの例は、コントローラなしで実装されています。

私はバックボーンのコントローラの使い方についてはっきりしていません。もし誰かがこの話題に光を当てることができたら、本当に感謝しています。

ありがとうございます! Matt

+0

http://www.jamesyu.org/2011/01/27/cloudedit-a-backbone-js-tutorial-by-example/ – Heikki

答えて

12

Backbone.ViewとBackbone.Controllerの違いは、コントローラにはルートアーキテクチャがあり、対応するBackbone.History()リスナーはハッシュタグの後にURLの部分に注意を払うことです(#)。

基本的に、これはBackbone.Controllerがブックマーク可能なURLを提供することを意味します。ハッシュ部分を手作業で記述してブックマークすることができるので、Bookmark.Controllerは、GETtable項目を表示することが理にかなっているオブジェクトのみを参照する必要があります。

私は、バックトンストアのサミーチュートリアルのhttp://www.elfsternberg.com/2010/12/08/backbonejs-introducing-backbone-store/という小さなチュートリアルを書いています。 GitHubリポジトリへのリンクをたどった場合は、最新のバージョンを入手することもできます。

+0

恐ろしい書きかけです。どうもありがとう! – Matt

+7

これはわずかな日付です。バックボーンにもはやコントローラーがなくなり(現在は「ルーター」と呼ばれています)、「ビュー」は実際にコントローラーが期待する機能を実際に実行します。実際のビューはDOMだけであり、DOM libのどんな風味でも更新可能です。 –

+1

ええ、違いを見ると、 "Controller"と "Router"の間の名前の変更はほとんどなく、Viewは常にプライマリコントローラのメカニズムでした。この変更は事柄を明確にします(あなたはブックマーク可能なものにルーティングしたいと思っています)が、根底にあるロジックを全く混乱させません。 –

関連する問題