将按钮单击转换为require.js样式编码

osh*_*nen 4 jquery requirejs

我迷失了require.js.定义似乎总是在require.js示例页面中返回一些内容.

如何将以下内容转换为require.js样式编码?

$("button_1").click(function(event) {
    alert("button 1 has been clicked");
});
Run Code Online (Sandbox Code Playgroud)

因为它returns什么都没有.

VeX*_*Xii 7

我想你错过了要求部分.当你使用AMD时,你需要"导入"你的其他模块才能使用它.看看下面的例子,它足以让你前进.通过使用requrejs + jquery下载:

的index.html

<!DOCTYPE HTML>
<html lang="en-US">
<head>
  <meta charset="UTF-8">
  <title></title>
  <script type="text/javascript" src="path/to/requirejs_jquery" data-main="path/to/main.js" ></script>
</head>
<body>
  <button id="button_1">sup</button>
</body>
</html> 
Run Code Online (Sandbox Code Playgroud)

Main.js

require(["jquery"],function($){ //import the jquery script 
  $(function(){
    $("#button_1").click(function(){
      alert("#button_1 got a click")
    })
  })
})
Run Code Online (Sandbox Code Playgroud)

你提到定义aswell,那就是你想宣布一个新的模块,你可以在以后"导入"你的项目.所以让我们展开abit并创建一个名为"my"的文件夹并将其放在主脚本旁边

我/ module.js

define(function(){
  return {
    foo: function(){alert("bar")},
    barz: function(){return "hey from barz"}
  }
})
Run Code Online (Sandbox Code Playgroud)

现在我们可以简单地将它包含在主文件(或其他模块)中,如下所示:

main.js

require(["jquery", "my/module"],function($, module){ //import the jquery script 
  $(function(){
    $("#button_1").click(function(){
      alert("#button_1 got a click")
      console.log(module,"sup")
    })
  })
})
Run Code Online (Sandbox Code Playgroud)