博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
RequireJs入门实例
阅读量:4961 次
发布时间:2019-06-12

本文共 3002 字,大约阅读时间需要 10 分钟。

*

参考文章:

按照这篇文章自己动手写了一个例子,做了小修改

一:目录

二:源码

0,index.html

    
Home

requireJS 例子 example 01

 

1,main.js

//1,about require js config//配置信息  ;  require.config({      //define all js file path base on this base path      //actually this can setting same to data-main attribute in script tag      //定义所有JS文件的基本路径,实际这可跟script标签的data-main有相同的根路径      baseUrl:"./scripts"         //define each js frame path, not need to add .js suffix name      //定义各个JS框架路径名,不用加后缀 .js      ,paths:{           "jquery":["http://libs.baidu.com/jquery/2.0.3/jquery", "lib/jquery/jquery.min"] //把对应的 jquery 这里写对即可          ,"workjs01":"work/workjs01"           ,"workjs02":"work/workjs02"          ,"underscore":"" //路径未提供,可网上搜索然后加上即可      }            //include NOT AMD specification js frame code      //包含其它非AMD规范的JS框架      ,shim:{           "underscore":{              "exports":"_"          }      }        });    //2,about load each js code basing on different dependency  //按不同先后的依赖关系加载各个JS文件  require(["jquery","workjs01"],function($,w1){      require(['workjs02']);  });

 

2,workjs01.js

define(['jquery'],function($){  //注意模块的写法      //1,define intenal variable area//变量定义区      var myModule = {}; //推荐方式          var moduleName = "work module 01";      var version = "1.0.0";            //2,define intenal funciton area//函数定义区      var loadTip = function(tipMsg, refConId){          var tipMsg = tipMsg || "module is loaded finish.";          if(undefined === refConId || null === refConId || "" === refConId+""){              alert(tipMsg);          }else{              $('#' + (refConId+"")).html(tipMsg);          }      };            //3,should be return/output a object[exports/API] if other module need      //如有需要暴露(返回)本模块API(相关定义的变量和函数)给外部其它模块使用      myModule.moduleName = moduleName;      myModule.version = version;      myModule.loadTip = loadTip;       return myModule;            /*     //this is same to four line code upper//跟上面四行一样     return {         "moduleName":"work module 01"         ,"version":"1.0.0"         ,loadTip:loadTip     };     */        });

 

3, workjs02.js

define(['workjs01'],function(w01){      //1,define intenal variable area//变量定义区      var moduleName = "work module 02";      var moduleVersion = "1.0.0";            //2,define intenal funciton area//函数定义区      var setHtml = function(refId,strHtml){          if(undefined === refConId || null === refConId || "" === refConId+""){              return;          }else{              $('#' + (refId + "")).html(strHtml+"");          }      };            //3,auto run when js file is loaded finish      //在JS加载完,可在本模块尾部[return之前]运行某函数,即完成自动运行      w01.loadTip("本页文件都加载完成,本页设计 workjs01.js 文件依赖jquery, workjs02.js 依赖 workjs01.js","loadMsgCon");            //4,should be return/output a object[exports/API]      //如有需要暴露(返回)本模块API(相关定义的变量和函数)给外部其它模块使用      return {          "moduleName":moduleName          ,"version": moduleVersion      }        });

三:运行页面

 

 

*

转载于:https://www.cnblogs.com/qingmaple/p/6076724.html

你可能感兴趣的文章
我的 nginx 配置
查看>>
[NOI2001]食物链(种类并查集)
查看>>
VMware workstation 与 VMware GSX Server 的区别
查看>>
OOA/OOD/OOP的区别
查看>>
hint指定index的深入理解
查看>>
ASP.NET Excel数据导入数据库---2
查看>>
Instagram的技术架构
查看>>
嘉定三屠与扬州十屠
查看>>
Lua学习笔记9:多文件
查看>>
Qt 3D研究(九):尝试第二边缘检测方法
查看>>
GG同步sqlserver报错一个案例 Invalid date format
查看>>
Opencv246+vs2012生成不依赖编译环境的exe文件
查看>>
jquery对checkbox的操作汇总
查看>>
ps 第一篇
查看>>
nginx配置url中带问号的rewrite跳转
查看>>
SICP习题1.45解答
查看>>
[转]Delphi 控件属性和事件
查看>>
iOS:事件处理机制
查看>>
ASPose导出excel简单操作
查看>>
基础数据类型
查看>>