問題タブ [browser-refresh]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
4072 参照

java - @PreservedOnRefresh でない場合に Vaadin UI が更新されたかどうかを知る方法はありますか (F5 リロード)

Vaadin についての質問ですが、有用な情報を見つけることなく、たくさん検索しました。

@PreserveOnRefresh アノテーションが設定されていないときに UI が更新されたかどうかを知る必要があります (つまり、UI.refresh() のオーバーライドは機能しません)。

基本的に、ユーザー セッション ID をブラウザーで開いている UI にマップするマップがあります。新しい UI が検出されたら、それを現在のセッションの UI のコレクションに追加する必要があります。

ユーザーがブラウザーで同じ UI (サーブレット @WebServlet 構成によってマップされた同じ UI 実装) を要求した場合、ブラウザーの別のウィンドウまたは別のタブで開かれた UI である場合にのみ、この UI を追加する必要があります。ブラウザ ウィンドウが更新されたら、何もしないか、古い UI を削除して新しい UI を配置することをお勧めします。

@PreservOnRefresh アノテーションを UI に追加すると、これが機能することはわかっています (ただし、UI を保存できないようにする必要があります)。

では、どうすれば実際にそれを行うことができますか?私はこの実装を見つけました (私には少し醜いようです) -> http://dev.vaadin.com/ticket/12191#trac-change-5-1374239207261117

それを行う別の方法はありますか?

注目してくれてありがとう!

0 投票する
1 に答える
181 参照

wicket - ページに送信された後、ブラウザの更新後に改札フォームのフィールドを空白のままにしておくことができません。私のフィールドはグループ ボックスに存在します

ページに送信された後、ブラウザの更新後に改札フォームのフィールドを空白のままにしておくことができません。私のフィールドはグループ ボックスに存在します。

日付ピッカーとテキスト フィールドを持つグループ ボックスのあるウィケット フォームがあります。データを入力して送信すると、成功の応答が返されます。ブラウザーの更新時に、これらのフィールドを空にしたいのですが、空になりません。

として成功応答の後にすべてのフィールドを空白に設定しようとしましたfieldName.setModelValue(new String[]{" "});

どこでも設定せずに、ブラウザの更新処理でこれを行う必要があります。

0 投票する
1 に答える
722 参照

javascript - meteor でブラウザの更新を検出する

次のボタンをクリックすると質問が次々と表示される「アンケート」というコンテナテンプレートがあります。次のボタンをクリックすると、バックグラウンドで次の質問へのルートを提供するロジックがいくつかあります。そして、アンケート内の質問テンプレートを変更します。

次のボタンをクリックするだけで表示される「質問1」「質問2」などの簡単な質問テンプレートがたくさんあります。

最初にリンク「http://localhost:4000/questionnaire」にアクセスしたとき。デフォルトでは「question1」テンプレートが表示されます。ユーザーが「次へ」ボタンをクリックすると、サーバーから質問 ID が取得され、その質問テンプレートが表示されます。したがって、次のボタンをクリックすると、「http://localhost:4000/question/2」に移動し、 question2 テンプレートが表示されます。

これまでのところ、すべてがスムーズに機能しています。

しかし、「 http://localhost:4000/question/2」をブラウザに直接入力してリロードすると問題が発生します。コンテナがロードされていないため、ページは空白になります。

では、これに対する最終的な修正は何でしょうか? ルーターで「ホット プッシュ コード」を検出した場合、コンテナー テンプレートもレンダリングできると思いますが、これはどのように行うべきでしょうか? そして、どちらが最善のアプローチであるかはわかりません。

任意の考えや助けをいただければ幸いです。