モジュール開発、SesJS簡単まとめ

11878 ワード

一、概念:SeaJSは、Common JS規格に準拠したJavaScriptモジュールローディングフレームである.
Sea.jsでは、すべてのJavaScriptモジュールはCMD(Common Module Definition)モジュール定義仕様に従う.この規範はモジュールの基本的な書き込みフォーマットと基本的なインタラクティブルールを明確にしている.
CMD仕様では、モジュールはファイルです.コードの書き方は以下の通りです.define(factory)
 
SeaJSは二つの問題を解決しました.
1.JavaScriptのモジュール化
2.モジュールごとにロード
 
SeaJSの開発における役割:多くの人が協力して開発する時、後方勤務者の役割を果たし、協調 ファイルの依存性、名前の衝突、必要に応じてロードする役割.
二、使い方:
1.sea.jsを導入する
2.定義モジュール--define
3.対外提供インターフェース--export
4.依存インターフェース--require
5.モジュールを呼び出す--seajs.use
 
例:
譲るために  sea.js 内部は素早く自分のパスを取得できます.手動で追加することをオススメします.  id 属性
 1 <!DOCTYPE html>

 2 <html xmlns="http://www.w3.org/1999/xhtml">

 3 <head>

 4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

 5 <title>seajs     </title>

 6 <script type="text/javascript" src="sea/sea.js" id="seajs"></script>

 7 <script>

 8 /*

 9         

10 11         seajs.use(url, callback); 

12 13         url:        , url      sea.js     

14         callback:     

15 16           url ,seajs     url   ,         callback;

17                    JS,         。

18 */

19 seajs.use('./js/test1.js',function(ex){

20     

21     //ex      export

22     ex.tab();

23     

24     function tab(){

25         alert('     ,    tab,     ~~');

26     }

27     

28     tab();  //           

29     

30 });

31 

32 </script>

33 </head>

34 

35 <body>

36 </body>

37 </html>
ディレクトリの階層関係は以下の通りです.
 
test 1.jsは以下の通りです
 1 // JavaScript Document

 2 /*

 3         

 4  5         define(function (require, exports, module){ //       

 6             //your code gose here

 7          }); 

 8  9         require:      

10         exports:        

11         module:  

12 13         1.   require   ,seajs     url   ,          。         require.async(url, callback);

14         2.exports                 ,  seajs.use ,callback       exports  

15 */

16 define(function(require, exports, module){ 

17     

18     //          JS  

19     require('./test2.js');

20 

21     //         define  JS  

22     var ex = require('./test3.js');

23 

24     function tab(){

25         alert('  test1       ');

26         alert('test1' + a);

27         alert('test1' + ex.b)

28     }

29     

30     exports.tab = tab;

31     

32 });
 
 test 2.jsは以下の通りです
1 // JavaScript Document

2 

3 var a = '  test2 ,   test2     ';
 
test 3.jsは以下の通りです
1 // JavaScript Document

2 

3 define(function(require,exports,module){ //       

4     

5     exports.b = '  test3 ,  test3       ';

6     

7 });
 
 
上でseajsでよく使われている4つの方法について述べましたが、管理者のseajsでよく使われている7つの方法を参考にしてください.  https://github.com/seajs/seajs/issues/266