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」ボタンをクリックすると、モジュールから別の出力が得られます-