define()函数可以被用于加载模块(模块可以是一个对象,函数,类或该加载模块之后执行的代码)。您可以在同一页面中加载同一模块的不同版本。即使以不同的顺序加载,也可以以相同的顺序分析不同的版本。
语法
define(['module1', 'module2'], function (module1, module2) {
//define the module value by returning a value
return function () {};
});
定义模块时可以传递模块名称列表,并且RequireJS可用于在执行模块之前检索这些模块。这些模块可以作为define()函数的参数传递。
例
下面的示例显示了在加载模块时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文件,并分别放置以下代码:
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”按钮,您将从模块获得另一个输出:

作者:terry,如若转载,请注明出处:https://www.web176.com/requirejs/2000.html
支付宝
微信