require.js的诞生,就是为了解决这两个问题:
(1)实现js文件的异步加载,避免网页失去响应;
(2)管理模块之间的依赖性,便于代码的编写和维护。

实例下载:require.js应用实例

一、require.js的加载文件

<script src="js/require.js" data-main="src/main.js"></script>

由于require.js默认的文件后缀名是js,所以可以把main.js简写成main。

二、主模块的写法
main.js,我把它称为"主模块",所有代码都从这儿开始运行。

require(['模块依赖'],, function (回调函数){});

实例:
require(['jquery'], function ($){ })

三、config配置

require.config({
baseUrl: '路径',
    paths: {
'标识':'路径'
    } });

四、AMD模块的写法

define(function (){ });

如果模块存在依赖,那么define()函数的第一个参数,必须是一个数组,指明该模块的依赖性。

define(['lib'], function(myLib){ });

当require()函数加载上面这个模块的时候,就会先加载依赖文件lib.js。

五、require.js插件
require.js还提供一系列插件,实现一些特定的功能。 插件下载地址:
https://github.com/jrburke/requirejs/wiki/Plugins


实际开发应用

文件:

require.js

jquery.js

main.html

main.js

one.js

three.js

two.js

文件代码:

init.html

<script src="js/require.js" data-main="src/main" type="text/javascript"></script>

main.js

require.config({
//baseUrl: ".",
paths: {
"jquery": "/script/jquery"
}
}); //main.js 调用依赖模板,次处为入口程序main()
require(['one', 'two', 'three'], function (one, two, three) {
document.write(one.add(1, 2));
document.write('</br>');
document.write(two.add(3, 4));
document.write('</br>');
document.write(three);
});

one.js

//定义非依赖模板
define(function () {
var add = function (x, y) {
return "one.js模板,实现x+y=" + x + y;
};
return {
add: add
};
});

two.js

//定义依赖模板
define(['one'], function (one) {
var add = function (x, y) {
return "two.js模板,依赖one.js模板,x+y=" + one.add(x, y);
};
return {
add: add
};
});

three.js

define(['jquery'], function ($) {
return "three.js模板,实现调用jquery.js类库:" + $.trim('jquery trim');
});

10分钟精通require.js的更多相关文章

  1. 10分钟精通SharePoint-搜索

    大势所趋随着企业内容和文档数量的骤增,快速定位到所需材料和内容已经迫不及待,这也是所有企业所面临的共同的挑战,应这个大的趋势,"搜索"闪亮登上了企业协作(SharePoint)舞台 ...

  2. 10分钟精通SharePoint - SharePoint升级

    类型: b2b(安装更新)和v2v(跨版本升级) 内容:二进制文件和数据库 过程:   升级前检查 - 检查场内数据,配置和自定义等等 升级准备和计划 - 根据需要和升级检查制定相应计划和准备工作   ...

  3. 10分钟精通SharePoint - SharePoint安装

    简介 接触SharePoint就避免不了要接触SharePoint安装,无论你是对SharePoint进行开发还是管理(终端用户除外).SharePoint的安装涉及到两部分:预装.安装和配置,这主要 ...

  4. 10分钟精通SharePoint - SharePoint拓扑结构

    SharePoint服务器角色:前端,应用程序和数据库服务器 应用程序服务:搜索.Office文档.User Profile和App等应用服务器 数据库类型:内容数据库.应用程序数据库和配置数据库 规 ...

  5. Node.js躬行记(21)——花10分钟入门Node.js

    Node.js 不是一门语言,而是一个基于 V8 引擎的运行时环境,下图是一张架构图. 由图可知,Node.js 底层除了 JavaScript 代码之外,还有大量的 C/C++ 代码. 常说 Nod ...

  6. 10分钟精通SharePoint - SharePoint发展历程

    SharePoint 2001: SharePoint Team Service(STS) SharePoint Portal Server(SPS) SharePoint 2003: Windows ...

  7. 10分钟精通SharePoint - SharePoint定位

    平台 – "一栋楼房的框架结构" 扩展 – "用户可以根据自己需要随意装修房间"集成 – "插拔式的系统集成能力"业务– "既是全 ...

  8. ASP.NET MVC应用require.js实践

    这里有更好的阅读体验和及时的更新:http://pchou.info/javascript/asp.net/2013/11/10/527f6ec41d6ad.html Require.js是一个支持j ...

  9. require.js实践

    ASP.NET MVC应用require.js实践 这里有更好的阅读体验和及时的更新:http://pchou.info/javascript/asp.net/2013/11/10/527f6ec41 ...

随机推荐

  1. 使用FTP发布和更新Windows Azure网站

    在Windows Azure中,FTP的用户名和密码与管理门户的用户名和密码不一样,需要另外设置. →依次点击左侧的"网站",网站名称,右侧的"设置部署凭据", ...

  2. sql语句中having的作用是?

    HAVING对由sum或其它集合函数运算结果的输出进行限制.比如,我们可能只希望看到Store_Information数据表中销售总额超过1500美圆的商店的信息,这时我们就需要使用HAVING从句. ...

  3. C#编程(五十一)----------链表

    原文链接: http://blog.csdn.net/shanyongxu/article/details/47024865 链表 LinkedList<T>集合类没有非泛型类的版本,它是 ...

  4. 使用 ssh -R 建立反向/远程TCP端口转发代理

    转自:https://yq.aliyun.com/articles/8469 ssh是一个非常棒的工具, 不但能建立动态转发, 例如chrome的Switchy插件用到的就是这个技术.http://b ...

  5. BaseControl按钮合集

    BaseControl按钮合集 效果 源码 https://github.com/YouXianMing/Animations // // POPBaseControl.h // Animations ...

  6. [转]在Windows中安装PhpUnit

    FROM : http://www.cnblogs.com/heiing/archive/2012/09/07/2674807.html 步骤: 安装 pear ,参见http://www.cnblo ...

  7. [转]通过查看mysql 配置参数、状态来优化你的mysql

    From : http://wangwei007.blog.51cto.com/68019/967278 mysql的监控方法大致分为两类: 1.连接到mysql数据库内部,使用show status ...

  8. PL2303 Windows8.1驱动

    常用的USB转串口下载芯片驱动可以参照我这篇文章USB转串口 FT232/PL2303/CH340 驱动以及使用体会 ,今天有找出了那根串口线打算使用,由于系统已经换为Windows8.1 X64所以 ...

  9. Android ActionBar使用介绍

    一.什么是ActionBar 有图有真相,看一下图片就了解的差不多了 对于大多数应用,操作栏可以分割为 4 个不同的功能区域. 1. 应用图标 应用图标是您应用的标志.在应用图标位置摆放您自己的 lo ...

  10. GAN与NLP的讨论

    https://www.jianshu.com/p/32e164883eab 这篇文章,GAN与NLP的讨论,可以看看.