2011-12-25 2 views
4

jquery-pjaxをbackbone.jsと一緒に使うことはできますか?backbone.jsでjQuery pjaxを使うことができます

私はbackbone.jsでのルーティングがURLにハッシュで行われていることから、jquery-pjaxはサイト/アプリケーションの状態を変更するための必要性を排除しているようです。

Backbone.history.start({pushState: true});

編集をサポートしている場合

+1

私はpjaxが見たものから、ハッシュを取り除いていないので、ヒストリ状態に使用しますが、プッシュ状態であるため、デフォルトでpushがtrue(初期化パスpush:false)になります。新しいHTML5 pushStateサポート。ハッシュを使用しません。とにかく、なぜpjaxを使いたいのか分かりません。URLの変更は、すでにバックボーンルータによって行われています。あなたの別のページは、異なるビューである必要があります。 – Sander

答えて

-3

あなたはハッシュを失うバックボーンのためのプッシュ状態を有効にする必要があります。明確にするために、どちらのライブラリのは、それをサポートしていない古いブラウザにプッシュ状態の作業を行います、彼らはフォールバック動作を使用します。古いブラウザをサポートするには2つの方法があります。バックボーンのようにハッシュを使用するか、これにより一貫した体験が得られます。 pjaxを使用すると、バックボーンのパラダイム内で理想的ではないURLをハードロードする必要があり、その結果、バックボーンアプリが持つすべての可能なルートごとに複数の別々のページを構築する必要があります。

+0

は、特定のブラウザでのみ動作しますか?他にも、彼はバックボーンのルータのハッシュとpjaxのハッシュとの間に矛盾がありますか? – Sander

+2

pjaxが別のことをやっているのを見ることができません。 – JaredMcAteer

+0

本当ですか?それは非常に安心な答えではありません。 – Konklone

0

技術的に可能です。ここにはhead startがあります。

それは意味があるのでしょうか?

  1. が モデル
  2. 作成します。私は何を意味することは、設計バックボーンによって

    がそれをOversimplifying RESTfulなJSONインタフェース

    上で、既存のAPIにすべてを接続するが、通常の手順であるということです

  3. Fetch JSONデータを取得するAPI
  4. モデルをビューに渡す
  5. あなたがPJAXレスポンスからHTMLを持つことになりますので、あなたはすべてのことをスキップすることができPJAXでDOM

にビューによって生成されたHTMLを追加したテンプレート

  • とビューをレンダリングします。

  • 関連する問題