webpackを使用してフロントエンドをコンパイルするDjangoアプリがあります。フロントエンドライブラリとして私はsemantic-uiを使用しています。最近別モジュールsemantic-ui-calendarをインストールしました。複数のjsファイルでsemantic-ui-calendarを複数回使用するように設定する
正常に動作しています。必要なjsファイルでは、私は書くことができます
$('#event_starts_at_1').calendar({
minDate: new Date(today.getFullYear(), today.getMonth(), today.getDate(), today.getHours(), today.getMinutes()),
monthFirst: false,
});
これは、カレンダーコンポーネントを起動します。
ui-calendarコンポーネントは、私が使用する多くのオプションを使用します。また、ui-calendarが埋め込まれる複数のページがあります。
それぞれのjsファイルでui-calendar初期化を同じコードで繰り返し、コンポーネント内で一度だけ解決するソリューションを探したいとは思わない。
私にとっては、問題はあまり補完されていないようですが、jsとwebpackで解決する方法を理解できません。おそらくあなたはui-calendarをサブクラス化するか、それを一度しかセットアップしない何らかのスニペットを提供することができます。ありがとう!
設定オブジェクトを別のjsファイルに作成し、そのオブジェクトでカレンダーhtml要素を初期化するだけでも、html要素をパラメータとして使用する個別のjavascriptメソッドでも簡単に初期化することができます。しかし、その後、あなたのhtmlページのすべてにjsファイルをインクルード/インポートする必要があります。私はこのようなことをたくさん行い、定数などを持つさまざまなテンプレートのjsファイルを持っています。 – KjetilNordin
カレンダーコードをファイルに書き込んでヘッダー/フッターに入れて、どこでも利用できるようにするのはなぜでしょうか? – jovan
@ jovanはい、私はそれが行われたと思います。カレンダーjsおよびcssは、必要な各ページにロードされます。しかし、さらに、私は各HTML IDのカレンダーを初期化しなければならない複数のjsファイルを持っており、私はそれを望んでいません。 –