requireJS常用用法
为什么使用requirejs?
1、异步加载文件;
2、模块化开发:一个文件即是一个模块,减少全局变量。
相关方法
1、define()定义模块
define('moduleName可选', [依赖的模块], function (
依赖的模块别名) {return 返回值;
});
2、require()加载模块
require([加载模块], function (加载模块别名) {具体实现代码
});
加载文件
Require JS以一个相对与baseUrl的地址来加载所有的代码,有三种方式:
- 相对于html页面;
- 相对于data-main中引入的文件路径
- 通过
requirejs.config({baseUrl:'/js'})
来配置
加载机制
1、Require JS 使用head.appendChild()将每一个依赖加载为一个script标签。
2、加载即执行,加载js文件时候就执行里面相关的代码。
相关参数
1、 paths 映射不放于baseUrl下的模块名;
requirejs.config({baseUrl: 'js/libs',paths: {'jquery': ['\\cdn.....',//cdn路径'js/jquery'//备选路径]}});
2、 shim
对于不支持amd规范(即不使用defind和require编写)的js引入,可通过使用shim来配置。同时还可以定义相关文件之间的依赖
shim: {'modernizr': {deps: ['jquery'], // 依赖的模块exports: 'Modernizr', // 全局变量作为模块对象init: function(){ // 初始化函数,返回的对象代替exports作为模块对象return $;}}
}
3、map
用来配置多个版本依赖来进行引入。
map: {'*': 'libs/jquery','api/app2': 'libs/jquery2' // 除api/app2以外的引用jquery版本
}
4、waitSeconds
下载js等待的时间,默认为7秒,超过7秒requirejs抛出错误。如果设为0,则禁用等待超时。
5、urlArgs
下载文件时,在url后面增加额外的查询参数
urlArgs: '_=' + (new Date()).getTime() // 下载文件时,在后面增加当前时间戳
相关插件
1、text.js插件
用于加载文本文件的requirejs插件,通过ajax请求来加载文本,所以使用时会有跨域的限制,需要在paths里配置css的加载路径。
require(['text!/user.html!strip'], function (template) {console.log(template);
}
// 后面的参数strip表示过滤掉引入html页面中的html、head、body标签,只保留代码片段
2、css.js插件
用于加载样式文件的requirejs插件,需要在paths里配置css的加载路径。
require(['css!/style.css'], function (css) {console.log(css);
}
requireJS常用用法相关推荐
- 【Android 异步操作】Handler 机制 ( Handler 常用用法 | HandlerThread 简介 | HandlerThread 源码注释分析 )
文章目录 一.Handler 常用用法 二.HandlerThread 简介 三.HandlerThread 源码 一.Handler 常用用法 主线程 Handler 主要作用 : Looper 和 ...
- 【Android 异步操作】Timer 定时器 ( Timer 与 TimerTask 基本使用 | Timer 定时器常用用法 | Timer 源码分析 )
文章目录 一.Timer 定时器基本使用 二.Timer 定时器常用用法 三.Timer 源码分析 四.Timer 部分源码注释 五.源码及资源下载 参考文档 : Timer 定时器 API 文档 T ...
- 【Kotlin】Kotlin enum 枚举类 ( 常用用法 | 初始化成员变量 | 实现抽象方法 | 实现接口 | 获取名称和位置索引 | 调用枚举常量方法 )
文章目录 I . 枚举类常用用法 II . 枚举类初始化 III. 枚举类匿名类 IV . 枚举类实现接口 V . 获取枚举常量名称和位置索引 VI . 获取枚举常量的成员变量 VII . 调用枚举常 ...
- Python中的基本函数及其常用用法简析
分享Python中的基本函数及其常用用法简析,首先关于函数的解释函数是为了达到某种目的而采取的行为,函数是可重复使用的,用来实现某个单一功能或者功能片段的代码块,简单来说就是由一系列的程序语句组成的程 ...
- 【Data Mining】机器学习三剑客之Numpy常用用法总结
点击"小詹学Python",选择"置顶"公众号 重磅干货,第一时间送达 本文转载自AI蜗牛车,禁二次转载 一.前言 玩数据分析.数据挖掘.AI的都知道这个pyt ...
- grep参数说明及常用用法
grep参数说明及常用用法 查看文件内容 [kou@localhost ~]$ more size.txt b124230 b034325 a081016 m7187998 m7282064 a022 ...
- [转]ssh常用用法小结
ssh常用用法小结 1.连接到远程主机: 命令格式 : ssh name@remoteserver 或者 ssh remoteserver -l name 说明:以上两种方式都可以远程登录到远程主机, ...
- 关于grep,egrep正则表达式的常用用法
正则表达式是一类字符所书写的模式(pattern) 元字符:不表示字符本身的意义,而用于额外功能性的描述:而如果在这些特定的字符前加/这个符号那么这些字符就表示原有的意思. 正则表达式:基本正则表达式 ...
- Python格式化字符串f-string常用用法
简介: f-string,亦称为格式化字符串常量(formatted string literals),是Python3.6新引入的一种字符串格式化方法,该方法源于PEP 498 – Literal ...
最新文章
- Kafka的生产者优秀架构设计
- 千人千面,撩拨你的个性化广告
- sizeof和strlen解析
- java字节码忍者禁术
- Module的加载实现
- 用java实现云计算的两种趋势性方法
- java.io.serializable_java.io.Serializable浅析 | 学步园
- 二、appium的原理
- 新元宇宙每周连载《地球人奇游天球记》第十五回土星种菜
- 无人机视觉检测算法研究及数据集汇总
- 利用辗转相除法——求最大公约数(详解)
- 5.Python数据分析项目之文本分类-自然语言处理
- 淘宝总裁蒋凡:今年双11淘宝推荐流量超过了搜索流量
- 高中数学数列解题:技巧数列大题—错位相减
- Mysql修改数据库名
- 大家在人生低谷时有多惨,怎么熬过来的(五)
- 自我管理类书籍推荐,提高自我管理能力就靠这本书了!
- 【Python】配置Python环境
- 细细探究MySQL Group Replicaiton — 配置维护故障处理全集
- 产品经理的战争:“产品已死 还是产品为王”?