模块化构建工具(requirejs)
来源:互联网 发布:淘宝大连洲际 编辑:程序博客网 时间:2024/05/20 20:04
在日常的开发环境中,我们总是会引用到各种各样的外部的JS文件,有各种库,也有各个不同需求下的JS,如果我们把这一大堆乱七八糟的的JS代码依次写下来,不仅使得页面非常的难看,而且如果其中某些JS文件需要依赖到一些库或者其他的JS文件并且顺序写错的话就会报错,所以我们用到了requirejs来优化外部js文件的引入。
requirejs 是一个非常小巧的Javascript模块载入框架,其中的语法参照了Nodejs的语法,所以看起来有点相似,但实际区别还是很大的。
requirejs英文文档
菜鸟requirejs教程
一、使用
requirejs之中一共有3个API:define、require、requirejs,其中require = requirejs 。
define用作定义一个模块:
define(function(){ funtion $(selector){ return document.querySelectorAll(selector); }})require用作引用其他的模块,第一个参数为需要引用的模块,第二个参数是引用后需要执行的代码块。
require(["js/selector"],function($){ console.log($("div"));})网络上面有很多的库都支持requirejs的使用(比如jQuery),但也有一些不支持,这个时候我们就需要对这些做一些设置。
新建一个设置文件config.js
require.config({baseUrl: "/",paths : {"jquery" : "lib/jquery/jquery-1.12.4.min",""fly" : "lib/jquery_plugins/jquery.fly.min","template" : "lib/arttemplate/template-native",},shim : {"fly" : {deps : ["jquery"]}}});其中jquery和template模版引擎都支持requirejs,但依赖与JQ的fly组件不支持,所以需要在shim里面设置好fly的依赖文件。
这样加了设置文件后,主要用作处理页面操作的JS文件可以写作:
require(["config"], function(){require(["jquery", "template", "fly"], function($, template){//代码区块});});
而在HTML文件中引用时一句话就可以引用完毕:
<script src="js/require.js" data-main="js/index"></script>
二、不同的规范
现阶段的对模块定义的规范一般有三种,AMD ( requirejs )、CMD(seajs)、CommonJs。其中使用最多还是AMD规范,
AMD和CMD之间的区别具体可以参考CMD作者玉伯在知乎上面自己对于这两者区别的看法:AMD 和 CMD 的区别有哪些?
阅读全文
0 0
- 模块化构建工具(requirejs)
- JS模块化工具requirejs
- JS模块化工具requirejs
- JS模块化工具requirejs
- JS模块化工具requirejs
- 【requirejs】初识JS模块化工具requirejs
- JS模块化工具requirejs教程
- JS:模块化工具requirejs教程
- 初识JS模块化工具RequireJS
- JS模块化工具requirejs(一)
- JS模块化工具requirejs教程
- JS模块化工具requirejs教程
- JS模块化工具requirejs教程
- JS模块化工具requirejs教程(二):基本知识
- RequireJS:javascript模块化工具基本用法详解
- JS模块化工具requirejs教程(二):基本知识
- JS模块化工具requirejs简易教程
- JS模块化工具requirejs教程(二):基本知识
- C++ 存储类
- 几个常用的结构型设计模式总结
- 微信公众号怎么做动画页面-微信公众号使用教程17
- 《数据结构》实验二:线性表综合实验——(3)双链表
- 数据结构—线性表
- 模块化构建工具(requirejs)
- 微信公众号怎么添加多客服-微信公众号使用教程18
- sql server 2008验证不过去的详细教程
- 区块链核心代码调用和虚拟币开发库教程详细介绍
- 阅读记录——计算机心智操作系统之哲学原理
- hdu1754:I hate it
- 图像分割 | FCN数据集制作的全流程(图像标注)
- C#--WinForm--实现查询列表的动态排序
- OAF 页面初始化的基本代码形式一览