私のアプリケーションの JavaScript は jQuery と jQuery プラグインを使用しており、制御できない「悪意のある」環境で実行されています (これは e コマース プラットフォームの PHP 拡張機能です)。したがって、誰かがjQuery /プラグインのインスタンス(他の拡張機能によって導入された)をアタッチする前にjQueryコードが実行されるか、この後に実行されるか、ページがレンダリングされた後に誰かがjQueryを動的にロードするかどうかを判断する方法はありません.
基本的に問題は、他の拡張機能が (プラグインを使用して) jQuery を使用する可能性があり、jQuery をタグで接続するだけでは機能しないことです。
グローバル スコープを汚染することなく、特定のバージョンの jQuery プラグインをカプセル化されたスコープにロードするために、RequireJS が必要なバージョンの jQuery をロードするのに役立つ可能性があると強く感じています (したがって、他の拡張機能は引き続き適切に機能します)。次に、すべてのコードを「require」ステートメントにラップし、独自の jQuery とプラグインのセットを使用して実行します。私はこれを試してみましたが、うまくいきました(ただし、本番環境ではテストしていません)が、奇妙な方法でした。この質問は、私が抱えている問題に関連しているようです。また、AMD 互換バージョンの jQuery を使用することを提案する回答もあります。しかし、プラグインはどうですか?私が使用するすべてのプラグインにそのようなバージョンがあるとは思いません。
だから質問:
そのようなユースケース(未定義の環境でjQuery +プラグインを実行する)をカバーするためにRequireJSを使用できますか?そこで RequireJS を使用できる場合は、これを適切に行う方法のサンプル コードまたは説明をいただければ幸いです。これを RequireJS でカバーする方法がない場合、問題を処理するための最善の方法は何だと思いますか?