2012-03-21 25 views
2

私は第三者に配布するjQueryウィジェットを作成しています。それは非常に簡単です、それはajax呼び出しを行い、ページのdivにいくつかのコンテンツを配置します。Javascriptライブラリの依存関係をどのように管理しますか

ネームスペースの競合の可能性がなくても、1つのファイルに必要なものを簡単に与える方法はありますか?

jQuery、jQuery UI、および自分のコードを最小限に抑えたファイルを作ることができますが、他のバージョンのjQueryを使用すると競合が発生する可能性があります。 (例えば、私のコードをjQuery 1.7から外すことがあり、何らかの理由でjQuery 1.3を実行している可能性があります)。

+0

ref:http://api.jquery.com/jQuery.noConflict/ – Yoshi

答えて

2

私はあなたがこの質問を投稿が、ちょうど私が行ったように、誰もがグーグルからここに来る場合には、これはあなたが探しているソリューションであるため、そのは久しぶり知っている:

総括

http://www.angrycoding.com/2011/09/managing-dependencies-with-requirejs.html

requireを使用すると、アプリケーション用に異なるjqueryバージョンのみを読み込むことができるため、従来のコードと競合することはありません。

1

外部ライブラリを含むミニバージョンを作成しないでください。代わりに、READMEに依存関係を明確に記述してください。誰かが不十分なバージョンのjQueryを使用していると、大変です。管理の依存関係のより一般的なアプローチについては

は、たぶん、あなたが含まれる最後を参照解除するjquery.noconflictを使用することができます

var $j = jQuery.noConflict(); 

// Use jQuery via $j(...) 
$j(document).ready(function(){ 
    $j("div").hide(); 
}); 

1

を見てjqueryのバージョン

あなたはjqueryののバージョンが含まれた直後のようなものを実行します。

するvar yournamespace = jQuery.noConflictを();その後、代わりに$をjQueryのオペレータの

は、あなたは次のようにあなたの名前空間を使用します。

yournamespace( "のdiv P")を非表示します();。

関連する問題