RequireJS - 定义函数
Define ()函数可用于加载模块(模块可以是对象、函数、类或加载模块后执行的代码)。您可以在同一页面中加载同一模块的不同版本。不同的版本可以按相同的顺序进行分析,即使它们以不同的顺序加载。
句法
define(['module1', 'module2'], function (module1, module2) { //define the module value by returning a value return function () {}; });
您可以在定义模块时传递模块名称列表,并且可以使用 RequireJS 在执行模块之前检索这些模块。这些模块可以作为定义函数的参数进行传递。
例子
以下示例显示了加载模块时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>
创建一个名为main.js的js文件并在其中添加以下代码 -
define(function (require) { var myteam = require("./team"); var mylogger = require("./player"); alert("Player Name : " + myteam.player); mylogger.myfunc(); });
现在,再创建两个名为team.js和player.js的 js文件,并分别放置以下代码 -
团队.js
define({ player: "Sachin Tendulkar", team : "India" });
播放器.js
define(function (require) { var myteam = require("./team"); return { myfunc: function () { document.write("Name: " + myteam.player + ", Country: " + myteam.team); } }; });
输出
在浏览器中打开 HTML 文件;您将收到如下屏幕截图所示的输出 -
单击“确定”按钮,您将从模块获得另一个输出 -