关于RequireJS的简单介绍即使用方法


Posted in Javascript onOctober 20, 2016

RequireJS介绍

RequireJS 是一个JavaScript模块加载器。它非常适合在浏览器中使用。使用RequireJS加载模块化脚本将提高代码的加载速度和质量。

兼容性

浏览器(browser) 是否兼容
IE 6+ 兼容 ✔
Firefox 2+ 兼容 ✔
Safari 3.2+ 兼容 ✔
Chrome 3+ 兼容 ✔
Opera 10+ 兼容 ✔

优点

实现js文件的异步加载,避免网页失去响应

管理模块之间的依赖性,便于代码的编写和维护

快速上手

step 1

引入require.js

require()中的依赖是一个数组,即使只有一个依赖,你也必须使用数组来定义

第二个参数是回调函数(callback),可以用来解决模块之间的依赖性

<!DOCTYPE html>
<html>
  <head>
    <script type="text/javascript" src="require.js"></script>
    <script type="text/javascript">
      require(["js/a"], function(){
        alert("load finished");
      });
    </script>
  </head>
  <body>
   body
  </body>
</html>

step 2

require.config是用来配置模块加载位置

如果固定的位置比较长,可以使用 baseUrl : "js",则paths中就不用写js了

<!DOCTYPE html>
<html>
  <head>
    <script type="text/javascript" src="require.js"></script>
    <script type="text/javascript">
      require.config({
        paths : {
          "jquery" : ["http://vs.thsi.cn/js/jquery-1.7.2.min", "js/jquery"],
          "a" : "js/a"        
        }
      });

      require(["jquery", "a"], function(){
        alert("load finished");
      });
    </script>
  </head>
  <body>
   body
  </body>
</html>

step 3

step 2中重复出现了require.config配置,如果每个页面中都加入配置,就显得不大好了,requirejs提供了一种叫"主数据"的功能

创建一个main.js把step 2中require.config放到main.js中

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

step 4

通过require加载的模块一般都需要符合AMD规范即使用define来申明模块,但是部分时候需要加载非AMD规范的js,这时候就需要用到另一个功能:shim

require.config({
  shim: {
    "underscore" : {
      exports : "_";
    },
    "jquery.form" : ["jquery"]
  }
});
require(["jquery", "jquery.form"], function($){
  $(function(){
    $("#form").ajaxSubmit({...});
  })
});

以上就是小编为大家带来的关于RequireJS的简单介绍即使用方法全部内容了,希望大家多多支持三水点靠木~

Javascript 相关文章推荐
Mootools 1.2教程 正则表达式
Sep 15 Javascript
理解JavaScript的prototype属性
Feb 11 Javascript
如何让页面在打开时自动刷新一次让图片全部显示
Dec 17 Javascript
javascript在子页面中函数无法调试问题解决方法
Jan 17 Javascript
AngularJS基础 ng-keydown 指令简单示例
Aug 02 Javascript
AngularJS入门教程之Helloworld示例
Dec 25 Javascript
利用Vue.js实现checkbox的全选反选效果
Jan 18 Javascript
vue.js的提示组件
Mar 02 Javascript
JavaScript事件方法(实例讲解)
Jun 27 Javascript
详解使用vuex进行菜单管理
Dec 21 Javascript
基于rollup的组件库打包体积优化小结
Jun 18 Javascript
微信公众号H5之微信分享常见错误和问题(小结)
Nov 14 Javascript
javascript淘宝主图放大镜功能
Oct 20 #Javascript
利用Angular.js限制textarea输入的字数
Oct 20 #Javascript
一个极为简单的requirejs实现方法
Oct 20 #Javascript
JavaScript实现窗口抖动效果
Oct 19 #Javascript
原生js图片轮播效果实现代码
Oct 19 #Javascript
Angular2表单自定义验证器的实现
Oct 19 #Javascript
javascript滚轮控制模拟滚动条
Oct 19 #Javascript
You might like
《星际争霸重制版》兵种对比图鉴
2020/03/02 星际争霸
深入分析使用mysql_fetch_object()以对象的形式返回查询结果
2013/06/05 PHP
教你如何使用php session
2013/10/28 PHP
PHP获取文件的MD5值并判断是否被修改的例子
2014/06/19 PHP
PHP编译安装中遇到的两个错误和解决方法
2014/08/20 PHP
php数组保存文本与文本反编成数组实例
2014/11/13 PHP
Yii2 GridView实现列表页直接修改数据的方法
2016/05/16 PHP
PHP搭建大文件切割分块上传功能示例
2017/01/04 PHP
PHP 代码简洁之道(小结)
2019/10/16 PHP
How to Auto Include a Javascript File
2007/02/02 Javascript
Expandable &quot;Detail&quot; Table Rows
2007/08/29 Javascript
defer属性导致引用JQuery的页面报“浏览器无法打开网站xxx,操作被中止”错误的解决方法
2010/04/27 Javascript
防止浏览器记住用户名及密码的简单实用方法
2013/04/22 Javascript
使用nodejs、Python写的一个简易HTTP静态文件服务器
2014/07/18 NodeJs
浅谈JavaScript 框架分类
2014/11/10 Javascript
JavaScript返回网页中锚点数目的方法
2015/04/03 Javascript
微信小程序 触控事件详细介绍
2016/10/17 Javascript
微信小程序 sha1 实现密码加密实例详解
2017/07/06 Javascript
浅谈Node.js CVE-2017-14849 漏洞分析(详细步骤)
2017/11/10 Javascript
jQuery实现模糊搜索功能的方法分析
2018/06/29 jQuery
Vue 样式绑定的实现方法
2019/01/15 Javascript
小程序自定义模板实现吸顶功能
2020/01/08 Javascript
Vue路由守卫及页面登录权限控制的设置方法(两种)
2020/03/31 Javascript
[01:16:37]【全国守擂赛】第三周决赛 Dark Knight vs. 一个弱队
2020/05/04 DOTA
python用ConfigObj读写配置文件的实现代码
2013/03/04 Python
Python的Flask框架中@app.route的用法教程
2015/03/31 Python
Python Unittest自动化单元测试框架详解
2018/04/04 Python
python3 mmh3安装及使用方法
2019/10/09 Python
python、Matlab求定积分的实现
2019/11/20 Python
python GUI库图形界面开发之PyQt5多线程中信号与槽的详细使用方法与实例
2020/03/08 Python
Django+Celery实现动态配置定时任务的方法示例
2020/05/26 Python
StubHub意大利:购买和出售全球演唱会和体育赛事门票
2017/11/21 全球购物
I.T中国官网:精选时尚设计师单品网购平台
2018/03/26 全球购物
英国最大的在线快递公司之一:ParcelHero
2019/11/04 全球购物
优秀班干部事迹材料
2014/01/26 职场文书
法律六进活动方案
2014/03/13 职场文书