オフラインでアクセスできる必要があるHTMLページの形式でインタラクティブなレポートを作成しています。これらのオプションのどれがパフォーマンスを向上させるでしょうか?クライアント側とサーバー側のレンダリングオフラインのHTML
- 事前に(サーバー側のスクリプトを使用して)すべてのHTMLを作成し、1つ(ランディングページ)以外のすべての「ビュー」を非表示にします。ユーザーがメニュー項目をクリックすると、現在表示されているビューを非表示にし、その選択に対応するビューを非表示にします。
- すべてのデータをJavaScript変数/オブジェクトとして含めます。ユーザーがメニューから何かを選択したら、Handlebars.jsのようなテンプレートエンジンを使用して必要なHTMLを作成します。
私は、クライアント側とサーバー側のレンダリングをカバーする他の記事を見つけましたが、特定のデータポイントを要求するためにサーバーにコールバックできないオフラインアプリケーションに特有のものは何もありません。私の場合、すべてのデータ(数百から数千のレコードまで)は、最初からHTMLに含める必要があります。
ありがとうございます!サーバーからクライアントへの転送時間を計算式から外し、HTMLがオフラインで実行されている間だけページの読み込み時間を考慮すると、テンプレート/生データはHTMLの事前レンダリングよりもまだ高速ですか? – atm
何が速くなるかを予測するのは難しいです。クライアントにデータを取得してからすべてを一度にレンダリングすることができます。このようにして後で違いはありません。全体の時間は、サーバー側またはクライアント側のレンダリングが高速かどうかによって異なります。また、多くのユーザーがいる場合は、クライアントでレンダリングすることでサーバーから負荷を取り除きます。 –