2

各ページにいくつかのミニアプレットがある、かなり大きな Web アプリがあります。これらのアプレットは、ほぼ常に同一の jquery アプリです。大きなプロジェクト内でこれらの jquery アプリの小さな部分を整理/含める方法についてのアドバイスを探しています。

たとえば、各アプリにはいくつかの独立したタブがあります。可能であれば、開発を容易にするため、各タブを個別の .html ファイルとして保存したいと考えています。

私の要件は次のとおりです。1)ページが読み込まれると、すべてのhtml「タブ」がクライアント側に読み込まれます。タブ html を動的にリクエストすることで、遅延を回避したいと考えています。

2) 可能であれば、送信される生データを最小限に抑えたいと考えています。たとえば、そのページに 10 個のアプレットがある場合は、各タブを 10 回送信するのではなく、各タブを 1 回送信することをお勧めします。

質問: 1) HTML ファイル / JavaScript コードを「含める」ためのオプションは何ですか? 2) この状況で開発をシンプルに保つためのヒントはありますか? 大きなページで作業する場合、1 つの巨大な html ファイルを編集するよりも優れた方法があるはずです。

4

3 に答える 3

1

PURE javascript テンプレート エンジンは私にとって役に立ちました: http://wiki.github.com/pure/pure/pure-version-2-release-notes

DOM のブランチをテンプレートとして使用します。ページの既存の部分を使用するか、必要なときに (またはそれ以前に) XHR を介してテンプレート HTML を要求できます。

PURE は、JSON データをテンプレートに適用して結果をレンダリングします。(HTML 内のクラスを JSON 内のプロパティにマッピングすることによって) これを自動的に行うか、JSON として保存された一連のルールを使用して細かく制御することができます。

レンダリングは非常に高速で、セットアップも比較的簡単です。

だから - あなたの例では、次のようになります。

  • 「タブ」用の HTML の 1 つのセット - ページに含めるか、XHR でリクエストします。
  • 各タブのコンテンツを XHR 経由で JSON オブジェクトとして取得 - HTML+コンテンツを送信するよりもはるかに少ないデータ
  • タブ テンプレートを使用して JSON をページ上の任意の場所にレンダリングします。
于 2010-04-13T21:10:55.597 に答える
0

あなたが求めているものを正確に把握するのは少し難しいですが、確かに行わなければならない点は、クライアント側のキャッシュを使用できるということです。サーバーで正しく設定すると、クライアントにロードするように指示できます同じファイルを何度もダウンロードしますが、クライアントは 1 つのコピーのみをダウンロードし、そのコピーを再利用します。(クエリ文字列も同じである必要がありますが、ハッシュ文字列は異なる場合があります)

ブラウザーとユーザーは、大きな HTML ファイル (少なくとも 1 MB 未満である限り) に問題はありません。キャッシングを使用すると、おそらく帯域幅のオーバーヘッドが最も少ない方法です。しかし、より小さなファイルで作業したい場合は、php スクリプトを設定して開発ファイルを連結し、直接提供するのではなく、ディスクに書き込むようにして、結果のファイルを提供することができます。

于 2010-04-04T13:54:37.187 に答える
0

サーバー側のインクルードを使用できます... JavaScript を使用してコンテンツをロードすることは、一部の人々がアクセスできないため、お勧めできません。

また、スクリプトの前にページをロードしたい場合は、 .s 要素を . そしてもちろん、ブラウザがキャッシュを使用できるように、スクリプトを別のファイルに配置します。

@eBusiness : 彼が Ajax を使用している場合、ブラウザはキャッシュを使用しないと思います... IE だけが XHR を使用して彼のキャッシュからページを取得します。

于 2010-04-04T14:02:41.503 に答える