require JS,requiredjs

  require JS,requiredjs

  require js(1)-snandy-博客花园简介

  RequireJS简介(一)RequireJS由詹姆斯伯克创立,他也是AMD specification的创始人。

  RequireJS将让您以不同于平常的方式编写JavaScript。

  您将不再使用脚本标记将JS文件引入HTML,并且您也不必通过脚本标记顺序来管理依赖关系。

  当然不会有堵。好了,先说一个简单的例子。

  使用以下结构创建一个新目录

  r1目录下有index.html、jquery-1.7.2.js、main.js和require.js。Require.js和jquery-1.7.2.js可以从各自的官网下载。

  Index.html如下

  ?1234567891011 !doctype html html headtitle介绍require js(I)/title metacarset= utf-8 script data-main= main src= require.js /script/head body/body/使用html requirejs非常简单,只需要通过head中的script标签介绍就可以了(其实除了require . js,其他文件模块都不再通过script标签介绍了)。

  细心的同学会发现脚本标签中添加了一个自定义属性:data-main=main ,等号右边的main指的是main.js当然任何名字都可以。这里指的是主模块或者门户模块,比如C或者java的主函数。

  Main.js如下

  ?123456789 require . config({路径:{ jquery: jquery-1 . 7 . 2 } });require([jquery],function($) {alert($()。jquery);});Main.js为两个函数调用require.config和require。

  require.config用于配置一些参数,这些参数会影响requirejs库的一些行为。

  require.config的参数是JS对象,常用的配置有baseUrl、paths等。

  这里配置了Paths参数,并使用了模块名“jquery”。它的实际文件路径是jquery-1.7.2.js(后缀。js可以省略)。

  我们知道jquery从1.7开始就支持AMD规范,即如果jQuery作为AMD模块运行,其模块名为“jQuery”。注意“jquery”是固定的。不能写“jQuery”之类的。

  注意:如果文件名“jquery-1.7.2.js”更改为“jquery.js”,则不需要配置paths参数。

  jQuery中AMD支持的代码如下

  ?123 if(type of define=== function define . amd define . amd . jQuery){ define( jQuery ,[],function(){ return jQuery;} );}我们知道jQuery最终公开了全局jQuery和$。如下

  ?12//向全局objectwindow.jQuery=window公开jQuery。$=jQuery如果将jQuery应用于模块化开发,则不需要使用全局,也就是说,不需要暴露全局。需要jQuery时使用require函数,

  这里require函数的第一个参数是一个数组,数组中存储了模块名(字符串类型),数组中的模块与回调函数的参数一一对应。这里的例子只有一个模块“jquery”。

  将目录r1放在apache或其他web服务器上,并访问index.html。

  网络请求如下

  我们看到除了require.js,还请求了main.js和jquery-1.7.2.js。它们是通过requirejs请求的。

  页面上将弹出jQuery的版本。

  这是一个非常简单的例子,使用requirejs动态加载jquery。使用了以下知识点

  1.数据主属性

  2.require.config方法

  3.需要功能

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: