RequireJS-関数の定義

定義()関数は、モジュールをロードするために使用することができる(モジュール、オブジェクト、関数、クラスまたはモジュールをロードした後に実行されるコードであることができます)。同じページに同じモジュールの異なるバージョンをロードできます。異なるバージョンは、異なる順序でロードされている場合でも、同じ順序で分析できます。

構文

define(['module1', 'module2'], function (module1, module2) {
   //define the module value by returning a value
   return function () {};
});

モジュールを定義するときにモジュール名のリストを渡すことができ、モジュールを実行する前にRequireJSを使用してこれらのモジュールを取得できます。これらのモジュールは、のパラメータとして渡すことができますdefinition function

次の例は、モジュールのロード中のdefine()関数の使用法を示しています。index.htmlという名前のhtmlファイルを作成し、その中に次のコードを配置します-

<!DOCTYPE html>
<html>
   <head>
      <title>Define() Function</title>
      <script data-main = "main" src = "require.js"></script>
   </head>
   
   <body>
      <h2>RequireJS Define() Function Example</h2>
   </body>
</html>

作成する jsmain.jsという名前のファイルに次のコードを追加します-

define(function (require) {
   var myteam = require("./team");
   var mylogger = require("./player");
   alert("Player Name : " + myteam.player);
   mylogger.myfunc();
});

次に、さらに2つ作成します jsteam.jsおよびplayer.jsという名前のファイルを作成し、それぞれ次のコードを配置します-

team.js

define({
   player: "Sachin Tendulkar",
   team : "India"
});

player.js

define(function (require) {
   var myteam = require("./team");

   return {
      myfunc: function () {
         document.write("Name: " + myteam.player + ", Country: " + myteam.team);
      }
   };
});

出力

HTMLファイルをブラウザで開きます。次のスクリーンショットのような出力が表示されます-

「OK」ボタンをクリックすると、モジュールから別の出力が得られます-