RequireJS介绍与应用
介绍
官方介绍
RequireJS是一个JavaScript文件和模块加载器。它针对浏览器内使用进行了优化,但可以在其他JavaScript环境(例如Rhino和Node)中使用。使用像RequireJS这样的模块化脚本加载器将提高代码的速度和质量。下面我们会使用一个实例对其引用方式、使用方法进行说明
目录
- 介绍
- 1、示例目录结构
- 2、实例开发
- 2.1、模板编写
- 2.2、配置文件处理
- 2.3、数据处理
- 2.4、视图处理
- 2.5、数据与视图绑定
- 2.6、效果查看
1、示例目录结构
下图是使用RequireJS的常规目录结构介绍:
1、apps/
中data.js
用于数据层处理,view.js
用于视图层处理,index.js
用于绑定数据和视图。
2、libs/
中存放依赖组件jquery-xxx.js和require.js。
3、main.js
是主配置文件,用于建立其它js文件和RequireJS关系。
4、index.html
是一个视图模板。
2、实例开发
2.1、模板编写
在index.html
模板中需要使用脚本标签引入require.js,并且需要指定data-main="js/main.js"
<script data-main="js/main.js" src="js/libs/require.js"></script>
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><!-- 引入require.js --><script data-main="js/main.js" src="js/libs/require.js"></script>
</head>
<body><div id="testId"></div>
</body>
</html>
2.2、配置文件处理
在主配置文件main.js
中,将需要引用的各js文件,交给requirejs管理。这里是给每一个js文件起一个别名,然后以对象形式注入到requirejs中,后续在其它js文件中可以直接使用别名调用。
//主配置文件
requirejs.config({//定义基础目录路径baseUrl:'js/',//创建文件映射关系,.js后缀不需要写paths:{"jquery":"libs/jquery-3.2.1","data":"apps/data","index":"apps/index","view":"apps/view"}
});//在requirejs中引入上面定义的js文件,$符号表示jquery对象
requirejs(["jquery","data","index","view"],function ($,data,index,view) {});
2.3、数据处理
在data.js
中定义一个数据处理函数,返回hello world文本
。另外,我们可以看到requirejs使用define()
函数进行自定义。
/*** 数据定义:负责数据处理*/
define(function () {function getData() {return "hello world";}return{getData:getData}
});
2.4、视图处理
在view.js
中定义一个视图处理函数,里面包括了get方法和set方法,get方法用于绑定html模板中testId值,set方法用于给html模板赋值后暴露给外部调用
/*** 视图定义:负责视图处理*/
define(["jquery"],function ($) {//get视图function getView() {return $("#testId");}//set视图function setView(data) {getView().html(data);}return{setView:setView,}
});
2.5、数据与视图绑定
在index.js
中绑定数据,渲染视图
/*** 绑定数据,渲染视图*/
define(["data","view"],function (data, view) {view.setView(data.getData);
});
2.6、效果查看
访问index.html
界面,可以看到hello world文本
渲染成功,同时在控制台也可以看到相关的js文件加载成功
RequireJS介绍与应用相关推荐
- requireJS介绍
前端开发在几年前就已经趋于模块化了,requireJS是很久之前的东西,笔者也是了解前端模块化开发的时候才知道的,今天就与大家分享一下笔者自己的小笔记. requireJS详细介绍链接: http:/ ...
- requireJs学习06requirejs引入
项目常见目录结构:js目录.index.html js目录下:apps目录.libs目录.main.js文件(主入口文件) index.html <!DOCTYPE html> <h ...
- Require使用方法详细讲解
Require使用方法详细讲解 文章目录 Require使用方法详细讲解 一.AMD 规范 1,AMD 基本介绍 2,AMD 模块规范 二.RequireJS 介绍 1,什么是 RequireJS 2 ...
- 【开源】分享一个前后端分离方案-前端angularjs+requirejs+dhtmlx 后端asp.net webapi
一.前言 半年前左右折腾了一个前后端分离的架子,这几天才想起来翻出来分享给大家.关于前后端分离这个话题大家也谈了很久了,希望我这个实践能对大家有点点帮助,演示和源码都贴在后面. 二.技术架构 这两年a ...
- JavaSript模块规范 - AMD规范与CMD规范介绍[转]
原文地址:http://blog.chinaunix.net/uid-26672038-id-4112229.html JavaSript模块化 在了解AMD,CMD规范前,还是需要先来简单地了解下什 ...
- requireJS文件夹
前言 对于像我这样的requireJS刚開始学习的人而言,requireJS最难理解的部分应该是它的路径问题.晚上随便折腾了一下,算是略微理清了这个文件夹问题吧. requireJS学习网址:requ ...
- Web前端开发必备:《Jquery实战》第3版 介绍
目标读者 本书适合想深入学习jQuery的Web开发人员.全栈工程师.架构师.jQuery是互联网上最流行的JavaScript框架.本书的目标是希望读者成为Web高级开发人员,无论起点如何.本书深入 ...
- 使用 RequireJS 优化 Web 应用前端
基于 AMD(Asynchronous Module Definition)的 JavaScript 设计已经在目前较为流行的前端框架中大行其道,jQuery.Dojo.MooTools.EmbedJ ...
- 在Html中使用Requirejs进行模块化开发
在前端模块化的时候,不仅仅是js需要进行模块化管理,html有时候也需要模块化管理.这里就介绍下如何通过requirejs,实现html代码的模块化开发. 如何使用requirejs加载html Re ...
最新文章
- GeneratorSqlMapCustom(mybatis逆向工程)
- java加载图片到缓存_Android实现图片异步加载并缓存到本地
- 电子计算机微机调试员,电子计算机(微机)装配调试员国家职业标准
- 对于在git上面拉代码报“error: RPC failed; curl 56 OpenSSL SSL_read: SSL_ERROR_SYSCALL, errno 10054“解决方法
- 编译安装 redis 2.2.14
- 信息系统项目管理师-信息化与信息系统考点笔记(下)
- 习惯看新闻头条 一个程序员分享的工作心得
- 登录微信用android设备,Android 之微信登录
- 【ZOJ - 4019】Schrödinger's Knapsack (dp,背包,贪心,组内贪心组间dp)
- 古天乐、胡歌登上核心期刊,他们的名字被用来命名一个新物种!
- 标记三维点_便携式3D扫描仪全自动三坐标测量机三维扫描设计扫描测量摄影
- java并发编程入门_探讨一下!Java并发编程基础篇一
- 一篇关于我是怎么理解喜欢上并且做好前端开发工作的文档
- 【zabbix系列】报警系统的设置和排除
- 常用nginx rewrite重定向-跳转实例
- cisco链路聚合配置
- Jquery.ajax使用
- Python修改屏幕分辨率
- 瑞尔IPO:一桩资本逼宫的上市计划
- 品牌营销案例拆解,一起来看看品牌们近期都有哪些精彩表现吧
热门文章
- 2019全年营收净利润双超预期 微盟开启“飞轮模式”
- 20.Spring学习笔记_基于配置文件的方式来配置 AOP(by尚硅谷_佟刚)
- 【分布式系统】使用 MQ 处理 2PC、3PC、本地事务表的分布式事务
- Python.openpyxl操作Excel
- python儿童编程例子代码-python儿童编程
- 曾遭作者“删库”的faker.js,现被社区接手;Apache Ambari 项目被弃用;FFmpeg 5.0 发布 | 开源日报
- 水善利万物而不争,处众人之所恶,故几于道
- 编译Android源码(9.0)
- 友盟对android的应用,Android 集成友盟统计
- 斗拱展开面积表_古建筑斗拱换算问题