博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Requirejs定义模块
阅读量:6047 次
发布时间:2019-06-20

本文共 956 字,大约阅读时间需要 3 分钟。

模块可以很好的定义作用域来避免全局名称空间污染,它可以显示的定义出函数间的依赖关系,而不需要引用全局变量。


RequireJS可以加载多个不同的模块,虽然加载的顺序不一样,但是能保证依赖的顺序是正确的。


1.  当模块中只有键值对时,可通过如下方式定义。

define({    name : "beautiful",    color: "yellow",    size: "3M"});

2. 当模块中没有依赖,只有函数时,模块的格式如下

define(function() {return {                   name : "beautiful",    color: "yellow",    size: "3M"    }});

3. 当模块中有依赖函数时,先定义出依赖函数的路径,依赖的函数的别名。

define(["./cart", "./inventory"], function(cart, inventory) {        return {                        name : "beautiful",    color: "yellow",    size: "3M"    addToCart: function() {        inventory.decrement(this);        cart.add(this);    }        }    });

4. 将模块定义为函数
define(["my/cart", "my/inventory"], function(cart, inventory) {            return function(title) {                    return title ? (window.title = title) :                   inventory.storeName + ' ' + cart.name;        }    });

通过上面的例子也许你已经注意到了,模块中的注册的函数或对象都是在return中返回的。如果你自定义了一些函数应该模块通过return返回,否则模块是无法找到你定义的函数的。

转载地址:http://catex.baihongyu.com/

你可能感兴趣的文章
django下ajax请求403(FORBIDDEN)的解决办法
查看>>
【中文】Joomla1.7扩展介绍之uddeIM (私信系统)
查看>>
如何设置select下拉禁止选择
查看>>
CentOS 6.5 下编译安装 Nginx 1.8.0
查看>>
java中正则表达式,编译报错:Invalid escape sequence (valid ones are \b \t \n \f \r \" \' \\ )...
查看>>
hadoop搭建
查看>>
Perl简单教程
查看>>
java 8 lambda表达式
查看>>
如何设置linux支持上传的文件中文不乱吗
查看>>
Python3.4+Django1.9+Bootstrap3
查看>>
LoadRunner
查看>>
django test基本操作
查看>>
部分端口号
查看>>
metamodel
查看>>
MariaDB的双主
查看>>
紫书第一章训练1 D -Message Decoding
查看>>
从技术人视角看闪电网络之闪电路由
查看>>
屏蔽F1~F12的快捷键的js函数
查看>>
取右端4到7位
查看>>
[转载]Spring Cloud初探
查看>>