开发学院

您的位置:首页>教程>正文

教程正文

RequiresJs 定义函数

RequiresJs 定义函数

  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文件,并分别放置以下代码

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文件;您将收到如下屏幕截图所示的输出:

requirejs-define-function.jpg

  单击“OK”按钮,您将从模块获得另一个输出

requirejs-define-function1.jpg