[解決済み] Backbone.jsとjQuery
質問
Backboneは抽象度の高い処理を行い、jQueryなどのライブラリはDOMの処理、イベントの正規化などを行うそうですが、Backboneはどのような処理をしているのでしょうか?
どなたか、簡単な実例でこのステートメントを理解するのを助けていただけませんか。
また、BackboneやKnockoutのようなMVCフレームワークの重要な特徴の1つは、モデル(データ)とビューを同期して維持することです。しかし、これはページレベルで特定されているようで、アプリケーション全体ではありません。そこで、複数のページにわたってモデル/データとビューを同期させることができます...(一種のグローバル)
どのように解決するのですか?
Backbone / Knockoutは通常、単一ページのアプリケーションに使用されます。つまり、jQuery があらゆるウェブページで使用できるツールボックスであるのに対し、Backbone は特定のタイプのアプリケーションのためのもので、そのためにコードを整理するのに役立ちます。少なくとも私の経験では、シングル ページ アプリケーションを構築する際の最大の課題の 1 つは、コードをクリーンかつモジュール式に保つことであり、Backbone はこの点で大いに役に立ちます。
典型的なバックボーン アプリの特徴は、次のとおりです。
- 基本的に静的な html ページであり、サーバー上で何も生成されません。
- サーバーは json REST api として動作し、アプリのコンテンツを提供します。
- データを表示するためのdom要素は、バックボーンビューのjavascriptで作成され、jQueryや様々なテンプレートライブラリを使って支援します。
- サーバーとの通信、およびアプリの異なる部分間の通信は、バックボーンモデルを通じて行われます。
複数のページにわたってデータを同期させ続けるという質問について、私の直感的な答えは、複数のページは必要ないということです。ユーザーはページが変化していると認識するかもしれませんが、URL バーのアドレスは pushState 機能のおかげで変化しますが、技術的にはアプリ全体は 1 つのページです。
この種のアプローチの最大の利点は、スムーズなユーザー エクスペリエンス (ページの再読み込みなし)、json データ以外のすべてが静的コンテンツであるため優れたキャッシュ サポート、モバイル ターゲットでは phoneGap で Web アプリをモバイル アプリに変換する可能性 (json 以外のすべてが静的であるため)、です。
関連
-
[解決済み] jQueryで要素が非表示になっているかどうかを確認するには?
-
[解決済み] JavaScriptで "use strict "は何をするのか、その根拠は?
-
[解決済み] let "と "var "の使い分けは?
-
[解決済み] jQueryでチェックボックスに "checked "を設定する
-
[解決済み] jQueryの「exists」関数はありますか?
-
[解決済み] jQueryでテーブルの行を追加する
-
[解決済み] jQueryで要素にスクロールする
-
[解決済み】jQueryでチェックボックスがチェックされているかどうかを確認するにはどうすればよいですか?
-
[解決済み] Node.jsでbase64エンコードされた画像をAmazon S3へアップロードする
-
[解決済み] JSHintの'+'前の改行不良の説明
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] ジェスト あるクラスの特定のメソッドをモックする方法
-
[解決済み] 文字列がすべて同じ部分文字列で構成されているかどうかを調べるにはどうすればよいですか?
-
[解決済み] モバイルWeb HTML5フレームワークの選び方【終了しました
-
[解決済み] 兄弟ノードを選択する方法はありますか?
-
[解決済み] javascript includes() 大文字小文字を区別しない
-
[解決済み] サブドメインにまたがってlocalStorageを使用する
-
[解決済み] moment.jsでミュータビリティを回避するには?
-
[解決済み] 文字列とラベルのローカライズとグローバリゼーションのベストプラクティス【終了しました
-
[解決済み] JavaScript で `throw` の後に `return` をする必要がありますか?
-
[解決済み] querySelectorAllがない場合、ライブラリを使用せずに属性で要素を取得する?