0

6 ~ 7 個のタブを持つアプリケーションがあります。私が望むのは、ブラウザーを閉じて再度開くときはいつでも、ページのデータを保持する必要があることです。つまり、ページの状態を保持する必要があります。現在、私のページには、いくつかのツリー、テキストボックス、チェックボックスなどの何千もの値があります。したがって、これらすべての値を 1 つずつ Cookie に保存することはお勧めできません。

私はたくさんグーグルで検索しましたが、これを行う方法が見つかりませんでした。これに対する解決策を見つけるのを手伝ってくれる人はいますか?

4

2 に答える 2

1

魔法の解決策はありません。

あなたは次のように探索するかもしれません -

Server Side approach - Activities and Places with Asyc calls to get the last stored values.

Client Side approach - Activities and Places with HTML5 local storage. 

どちらも、あなたが見たいと思う種類のキャッシング機能で使いやすいものではありません.

于 2012-12-28T05:06:41.877 に答える
1

ページに何千もの一意の値があるとは思えません。それは非常に悪いデザインを意味します。

多くの場合、ユーザーがこのページにアクセスするたびに同じ値を表示するツリー (特定の種類の項目のリスト) と、特定のデータ オブジェクト (製品など) に対応するさまざまな入力要素があります。この場合、このページの全体的な状態は次のように要約できます。

myWebSite/?#OrderForm:user=123&category=5&product=xyz&size=large

ユーザーがこのページをリロードする (または後で戻ってくる) と、アプリはこの URL トークンを解析することができ、ユーザーに何を表示するかを正確に認識します: すべてのパネル、チェックボックスなどを含む OrderForm を表示し、ロードしてツリーにカテゴリと製品を入力し、カテゴリ 5 をメニューで選択済みとして設定し、製品 xyz を製品ツリーで選択されたアイテムとして設定し、詳細パネルでこの製品の詳細を表示し、サイズの ListBox でサイズを大きく選択します。

もちろん、これは単なる例ですが、アプリを適切に設計すれば、アプリ内のすべての「ページ」を、わずかなパラメーターとごく少数 (多くの場合 1 つ) のデータ オブジェクトで記述することができます。次に、この状態を URL トークン、Cookie、サーバー セッションに格納するか、データベースに保持することができます。要件に応じて多くの選択肢があります。

于 2012-12-28T09:57:09.533 に答える