Javascript AMD模块化规范-备用

Javascript AMD模块化规范-备用

AMD是”Asynchronous Module Definition”的缩写,意思是”异步模块定义”。

模块定义
define(id?, dependencies?, factory);

其中:

  • id: 模块标识,可以省略。
  • dependencies: 所依赖的模块,可以省略。
  • factory: 模块的实现,或者一个JavaScript对象。

代码示例1: 定义一个alpha模块,依赖require,exports,beta模块

define(
"alpha"
, [
"require"
,
"exports"
,
"beta"
],
function 
(require, exports, beta) {
     
exports.verb =
function
() {
         
return 
beta.verb();
         
//Or:
         
return 
require(
"beta"
).verb();
     
}
}); 

 

代码示例2: 定义个匿名模块,依赖alpha模块

define([
"alpha"
],
function 
(alpha) {
    
return 
{
        
verb:
function
(){
            
return 
alpha.verb() + 2;
        
}
    
};
});

 

代码示例3: 使用JSON定义一个没有依赖的匿名模块。

define({
  
add:
function
(x, y){
    
return 
x + y;
  
}
});

 

代码示例4:定义一个兼容Modules/Wrappings模块化规范的匿名模块。

Modules/Wrappings是CommonJS Modules的浏览器端解决方案。AMD规范兼容Modules/Wrappings。

define(
function 
(require, exports, beta) {
    
exports.verb =
function
() {
        
return 
beta.verb();
        
//Or:
        
return 
require(
"beta"
).verb();
    
}
});

 

模块加载
require([module], callback)

AMD模块化规范中使用全局或局部的require函数实现加载一个或多个模块,所有模块加载完成之后的回调函数。

其中:

  • [module]:是一个数组,里面的成员就是要加载的模块;
  • callback:是模块加载完成之后的回调函数。

代码示例:加载一个math模块,然后调用方法 math.add(2, 3);

require([
'math'
],
function 
(math) {
 math.add(2, 3);
}); 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/109248.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 解决Deepin下qq无法显示图片「建议收藏」

    解决Deepin下qq无法显示图片「建议收藏」添加内核参数彻底禁用IPv6:执行:sudodedit/etc/default/grub开始编辑文件:在此行添加参数:GRUB_CMDLINE_LINUX=”ipv6.disable=1″保存退出后执行:sudoupdate-grub执行完命令之后,重新启动系统。亲测:可以接收图片…

    2022年8月10日
    3
  • php面试题目2020_php算法面试题及答案

    php面试题目2020_php算法面试题及答案2019最新整理PHP面试题附答案1、什么事面向对象?主要特征是什么?面向对象是程序的一种设计方式,它利于提高程序的重用性,使程序结构更加清晰。主要特征:封装、继承、多态。2、SESSION与COOKIE的区别是什么,请从协议,产生的原因与作用说明?A、http无状态协议,不能区分用户是否是从同一个网站上来的,同一个用户请求不同的页面不能看做是同一个用户。B、SESSION存储在服…

    2022年8月26日
    3
  • pycahrm 激活码_在线激活

    (pycahrm 激活码)好多小伙伴总是说激活码老是失效,太麻烦,关注/收藏全栈君太难教程,2021永久激活的方法等着你。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.htmlCJM5ZJBPHS-eyJsaWNlbnNlSWQi…

    2022年3月31日
    63
  • 安装PyTorch详细过程

    安装PyTorch详细过程安装PyTorch过程安装anaconda环境管理PyTorch安装检验安装安装anaconda登录anaconda的官网下载,anaconda是一个集成的工具软件不需要我们再次下载。anaconda官网点击下载跳转到这个页面如果你的Python版本正好是3.8版,那便可以直接根据系统去选择自己相应的下载版本就可以了。但是如果你的Python版本号不是当前页面的版本号,那我建议你去选择相对应的版本号。点击archive你就会跳转到下面的页面你可以访问这篇博客去找到当前与你python版本号相对

    2022年6月23日
    25
  • h3c路由器如何重启_h3c路由器远程管理

    h3c路由器如何重启_h3c路由器远程管理1、system-view进入系统视图模式2、sysname为设备命名3、displaycurrent-configuration当前配置情况4、language-modeChinese|English中英文切换5、interfaceEthernet1/0/1进入以太网端口视图6、portlink-typeAccess|Trunk|Hybrid设置端口访问模式7、undoshutdo…

    2022年10月18日
    0
  • 另类走遍美国的生活语言:美国黑话英语大观(详解)

    另类走遍美国的生活语言:美国黑话英语大观(详解)文章来源:生活是语言美国的黑人社会中的帮派问题经常地在绕舌歌曲中被讨论,自然也有许多与帮派相关的黑话会常在绕舌歌中出现,如:O.G.-即OriginalGangster,用来指有案底的帮派份子。redrum-就是谋杀(murder)的意思,只是这里把它反过来写。Rolling60s-一黑帮的支派。set-帮派分支。Settripping-帮派内斗。

    2022年5月12日
    75

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号