[解決済み] requirejsでjQueryプラグインをロード可能にする方法
2023-04-05 07:09:27
質問
私はrequirejs+jqueryで作業していますが、jQueryプラグインをrequireでうまく動作させるスマートな方法があるのかどうか疑問に思っていました。
例えば、私はjQuery-cookieを使用しています。私が正しく理解していれば、jquery-cookie.jsと呼ばれるファイルを作成し、内部で次のことを行うことができます。
define(["jquery"], // Require jquery
function($){
// Put here the plugin code.
// No need to return anything as we are augmenting the jQuery object
});
requirejs.config( {
"shim": {
"jquery-cookie" : ["jquery"]
}
} );
jQueryがやっているようなことができないかなぁと思い、こんな感じです。
if ( typeof define === "function" && define.amd && define.amd.jQuery ) {
define( "jquery", [], function () { return jQuery; } );
}
あるいは、jQueryプラグインをrequirejsやあらゆるamdと互換性を持たせる唯一の方法であるならば、これは
どのように解決するのですか?
どちらか一方を実行するだけです。
define(["jquery"], // Require jquery
function($){
// Put here the plugin code.
// No need to return anything as we are augmenting the jQuery object
});
をjquery-cookie.jsの末尾に記述するか、あるいは
requirejs.config( {
"shim": {
"jquery-cookie" : ["jquery"]
}
} );
jquery-cookieをインクルードする前の任意の場所(例えばdata-mainが指す場所など)。
あなたが投稿した最後のコードブロックは、再配布され、AMD環境にあるかどうかわからないjQueryのようなものに適しています。理想的には、すべての jQuery プラグインはすでにこれを設定しています。
私は、インクルードされたライブラリを可能な限り無垢のままにしておきたいので ページごとに一度、グローバルな shim 設定を行うのが、私にとって最もクリーンなソリューションのように思えます。 . そうすれば、アップグレードがより安全になり、CDN が可能になります。
関連
-
[解決済み] jQueryで要素が非表示になっているかどうかを確認するには?
-
[解決済み] jQueryでチェックボックスに "checked "を設定する
-
[解決済み] どのラジオボタンが選択されているかをjQueryで知るにはどうしたらよいですか?
-
[解決済み] jQueryでページを更新するにはどうすればよいですか?
-
[解決済み] jQueryで要素にスクロールする
-
[解決済み] jQueryで入力を無効化/有効化する?
-
[解決済み] jQueryで現在のURLを取得する?
-
[解決済み】jQueryでチェックボックスがチェックされているかどうかを確認するにはどうすればよいですか?
-
[解決済み] ExtJS 4のイベントハンドリングについて
-
[解決済み] Angularjs - 現在の日付を表示する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Javascriptによるタッチスクリーンデバイスの検出
-
[解決済み] Node.jsでbase64エンコードされた画像をAmazon S3へアップロードする
-
[解決済み] javascriptで2つの数値を連結する方法は?
-
[解決済み] 文字列のn番目の出現箇所を取得するには?
-
[解決済み] 兄弟ノードを選択する方法はありますか?
-
[解決済み] React js 親コンポーネントから子コンポーネントの状態を変更する
-
[解決済み] BlobからArrayBufferへ移行する方法
-
[解決済み] イテレータでmap()を使用する
-
[解決済み] Node.jsのES6クラスをrequireで作る
-
[解決済み] JavaScriptの文字列プリミティブとStringオブジェクトの違いは何ですか?