Wicket 6 で作業しています。私のページには、html にサードパーティ ライブラリへの JavaScript 参照が含まれています。カスタム コンポーネントの Behavior クラスの renderHead に JavaScriptHeaderItem を介して含める追加の標準ユーティリティのブロックがあります。
ここで、同じコンポーネントで特定の JavaScript コードをインラインで記述して、これら 2 つのインクルードからメソッドを呼び出す必要があります。問題は、それらのインクルード内の単純な変数でさえロードされる前にコードが実行されていることです。Wicket は、サードパーティのライブラリの上に両方をヘッダーに配置します。
コードを実行する前に両方が少なくともロードされていることを確認するために、本文内のタグでコードをレンダリングしたいと考えています。サードパーティのライブラリには DomReady イベントがありますが、少なくともベース変数を定義する必要があります。
FilteringHeaderResponse または HeaderResponseContainer を何らかの形で使用するつもりだと思いますが、例/javadocs は私にはあまり明確ではありません。私のインラインJavaScriptが次のようになっているとしましょう:
String js = "alert('Hello '" + ユーザー名 + ");";
ジャバから。そうではなく、それよりも複雑ですが、そうであれば、FormComponentPanel からこのインライン JavaScript をレンダリングするにはどうすればよいでしょうか? また、カスタム js を動的に含めるにはどうすればよいですか? ただし、インライン スクリプトが実行される前に、ヘッダーのサード パーティの js の下にレンダリングされるようにします。