应用require.js进行javascript模块化编程小试一例
发布日期:2021-06-30 17:26:37
浏览次数:2
分类:技术文章
本文共 1261 字,大约阅读时间需要 4 分钟。
长久以来都渴望应用javascript的模块化编程。今日紧迫更甚,岁月蹉跎,已经不能再等了。
拜读阮一峰的有关文章已经好几遍,文章写得真好,简洁流畅,头头是道,自觉有点明白了。但经验告诉我们,一定要亲手试一试。
一试之下,果然走了一些弯路,加深了理解。
一、下载require.js
http://requirejs.org/docs/download.html**二、编写相应测试代码。**计有:
页面:/index.html
主体结构定义JS:/main.js
符合AMD规范的模块化JS: /js/amd/module-A.js/js/amd/module-B.js
传统意义上的,不符合AMD规范、非模块化的JS
/js/noamd/file-C.js
代码如下:
//module-A.js//define方法,应该是在require.js定义的。这也是AMD规范的内容之一define(function (){ var add = function (x,y){ return x + y; }; return { add: add };});
//module-B.js//依赖于moduleAdefine(['moduleA'], function(ma){ function compute(x,y){ return ma.add(x,y); } return { compute : compute };});
//这是一个传统意义上,非AMD规范的JS;但是,还是要符合一定的规范:需要返回一个对象,以便在main.js里进行exports,然后外部才能进行使用(使用这个对象里面的方法)。var objectC = (function(){ function multiply(x,y){ return x * y; } return { multiply:multiply }})();
至关重要的main.js
//main.js//重点在于如何映射非规范模块require.config({ baseUrl: "js", shim: { 'moduleC': { deps: [], exports: 'objectC'//这个名字,跟file-C.js里的"var objectC=..." 对应 } }, paths: { "moduleA": "amd/module-A", "moduleB": "amd/module-B", "moduleC": "noamd/file-C"//非规范化文件这一步也是要的,并非单单在shim里定义了就行 }});
瞪灯瞪等!且看如何应用:
index.html参考文章:
转载地址:https://leftfist.blog.csdn.net/article/details/59544828 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
哈哈,博客排版真的漂亮呢~
[***.90.31.176]2024年04月12日 11时30分36秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
单目深度估计 monodepth2模型 代码
2019-04-30
位图索引Bitmap indexes
2019-04-30
YOLO算法(二)—— Yolov2 & yolo9000
2019-04-30
YOLO算法(三)—— Yolov3 & Yolo系列网络优缺点
2019-04-30
Python的__future__模块
2019-04-30
计算机视觉中的cost-volume的概念具体指什么(代价体积)
2019-04-30
启发函数heuristic 与 A*
2019-04-30
Image Pyramid(图像金字塔)
2019-04-30
Oracle 作业记录
2019-04-30
putty连接AWS配置(multimedia project)
2019-04-30
Hourglass Network 沙漏网络 (pose estimation姿态估计)
2019-04-30
OpenCV实战(二)——答题卡识别判卷
2019-04-30
目标检测神经网络的发展历程(52 个目标检测模型)
2019-04-30
Boundary loss 损失函数
2019-04-30
tensorflow使用tensorboard进行可视化
2019-04-30