AMD-requireJS
require.js是AMD的一种实现形式。
加载:
<script src="require.js" data-main="main"></script>(有时可加载文件可能造成页面失去响应,吧加载写在网页底部 )
main.js
主模块,依赖于其他模块。
require(['m1','m2','m3'],function(m1,m2,m3){
代码
}) 第一个参数是加载的依赖,必须是数组;第二个参数是回调函数,加载成功后会被调用
模块的加载
需要使用require.config()方法,主要是加载例如jQuery这样的js文件写在main.js的头部;
require.config({
//比如说现在m1,m2,m3与main.js在同一级目录下,加载路劲为:
paths:{ //模块路劲
m1:'m1',
m2:'m2',
m3:'m3'
}
//如果不在同一级目录下,可以修改基目录baseUrl,加入都在JS中lib文件下
baseUrl:"js/lib"
paths:{ //模块路劲
m1:'m1',
m2:'m2',
m3:'m3'
}
//如果在另一台主机上,直接后面接网址就可以了
})
加载非规范的模块
require.config({
shim:{
'underscore':{
exports: '_'
},
'backbone': {
deps: ['underscore', 'jquery'],
exports: 'Backbone'
}
}
})
shim属性:专门用来配置不兼容的模块;exports:标明这个模块外部调用时的名称;deps:标明该模块的依赖性,主要依赖的什么文件
AMD-requireJS的更多相关文章
- JavaScript模块化编程之AMD - requireJS基础使用
JavaScript模块化编程之AMD requireJS基础使用 标签(空格分隔): JavaScript 参考文章 AMD规范 AMD是"Asynchronous Module Defi ...
- CommonJS,AMD,RequireJS的区别
RequireJS实现了AMD的API. CommonJS是使用exports对象来定义模块的一种方法,它定义了模块的内容.简单地实现一个CommonJS的定义就像下面这样: // someModul ...
- CommonJS,AMD,RequireJS的差别
RequireJS实现了AMD的API. CommonJS是使用exports对象来定义模块的一种方法,它定义了模块的内容.简单地实现一个CommonJS的定义就像以下这样: // someModul ...
- Javascript模块化开发,使用模块化脚本加载工具RequireJS,提高你代码的速度和质量。
随着前端JavaScript代码越来越重,如何组织JavaScript代码变得非常重要,好的组织方式,可以让别人和自己很好的理解代码,也便于维护和测试.模块化是一种非常好的代码组织方式,本文试着对Ja ...
- AMD&CMD
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- CommonJS和AMD/CMD
JS中的模块规范(CommonJS,AMD,CMD) 一,CommonJS NodeJS是CommonJS规范的实现,webpack也是以CommonJS的形式来书写. 在浏览器环境下,没有模块也不是 ...
- RequireJS - 快速指南
原文: https://www.tutorialspoint.com/requirejs/requirejs_quick_guide.htm RequireJS - 概述 RequireJS是一个Ja ...
- JS模块规范:AMD,CMD,CommonJS
浅析JS模块规范 随着JS模块化编程的发展,处理模块之间的依赖关系成为了维护的关键. AMD,CMD,CommonJS是目前最常用的三种模块化书写规范. CommonJS CommonJS规范是诞生比 ...
- js模块化历程
这是一篇关于js模块化历程的长长的流水账,记录js模块化思想的诞生与变迁,展望ES6模块化标准的未来.经历过这段历史的人或许会感到沧桑,没经历过的人也应该知道这段历史. 无模块时代 在ajax还未提出 ...
- 转载:《TypeScript 中文入门教程》 7、模块
版权 文章转载自:https://github.com/zhongsp 建议您直接跳转到上面的网址查看最新版本. 关于术语的一点说明: 请务必注意一点,TypeScript 1.5里术语名已经发生了变 ...
随机推荐
- 2018年度 35 个最好用 Vue 开源库
在本文中,我们将推荐一些非常好用的 Vue 相关的开源项目.无论是开发新手还是经验丰富的老手,我们都喜欢开源软件包.对于开发者来说,如果没有这些开源软件包,很难想象我们的生活会变得多么疲惫不堪,而且靠 ...
- 三十八、Linux 线程——线程属性初始化、销毁、设置和获得分离属性
38.1 线程属性初始化和销毁 #include <pthread.h> int pthread_attr_init(pthread_attr_t *attr); int pthread_ ...
- 最好用的js前端框架、组件、文档在线预览插件
这里收集的都是个人认为比较好的js框架.组件 js前端ui框架 此处列举出个人认为最好的几个框架(排序即排名),现在好点的框架商用都需要付费,以下几个也不例外,但是由于组件丰富,都可以作为企业应用的完 ...
- 【游戏开发&Unity】捏脸系统(附源码)
本着“没有捏脸系统算什么RPG”的想法,着手做一个2d简易捏脸demo.其实换装游戏都差不多啦~ github代码地址:Simple-Character-Edit-System (Unity版本:5. ...
- 基于Android 的蓝牙A2DP 功能的实现
摘 要:蓝牙(Bluetooth)技术是一种低成本的无线数据与数字通信的开放性全球规范. Android 是Google 于2007 年11 月5 日宣布的基于Linux平台开源手机操作系统名称,该平 ...
- Volatile关键字理解
Volatile定义 为了确保共享变量能被准确和一致的更新,线程应该确保通过排他锁单独获得这个变量.Java语言提供了volatile,在某些情况下比锁更加方便.如果一个字段被声明成volatile, ...
- 定时刷新页面SetInterval 和setTimeout -时间间隔可以动态设定
JS里设定延时: 使用SetInterval和设定延时函数setTimeout 很类似.setTimeout 运用在延迟一段时间,再进行某项操作. setTimeout("function& ...
- linux 初识系统分区
- Django学习手册 - Form 插件
""" 核心: from django import formsfrom django.forms import fieldsfrom django.forms impo ...
- python,类和对象(二),self 、__init__(self,param[,param...])、__private(私有变量)
当我们在类中定义方法的时候,总会看到会第一个参数总是self,是的这个是python的一个语法,他相当于这个对象的指针. class Dog(): def setName(self,name): se ...