认识Require
1. 加载require.js文件
<script type="text/javascript" src="js/require.js" data-main="js/main" defer async="true" ></script>
2. 加载主模块文件
通过<script>标签设置 data-main="js/main" 加载主模块文件。
3. 异步加载require.js文件
设置 defer async="true" 实现多个浏览器兼容异步加载。
4. 路径配置
在main.js的顶部加入下面的代码
require.config({
baseUrl: "js/",
paths: {
"jquery": "jquery.min",
"underscore": "underscore.min",
"backbone": "backbone.min"
}
});
5. 加载一个jquery.js文件
define(['jquery'],function ($){
$(function(){
//console.log('jquery已经加载。');
});
});
6. 加载多个文件
require(['jquery', 'underscore', 'backbone'], function ($, _, Backbone){
$(function(){
//..
});
});
7. 加载自定义模块
//加载key/value格式模块
define(['jquery','jsonobj'],function ($,json){
$(function(){
console.log(json.name +'/'+ json.age);
});
});
//jsonobj.js
define({
'name': 'lbs',
'age': 10
});
//加载一个函数模块
define(['jquery','setColor'],function ($,O){
$(function(){
O.setColor();
});
});
//setColor.js
define(function(){
var color = function (){
document.getElementsByTagName('body')[0].style.backgroundColor = 'red';
};
return {
setColor: color
};
});
//加载一个依赖关系的函数模块
define(['jquery','color'],function ($,O){
$(function(){
O.setColor();
});
});
//color.js
define(['jquery'],function($){
var color = function(){
$('body').css('background','red');
};
return {
setColor: color
};
});
8. 其他配置选项
//加载非AMD标准的模块文件(underscore,backbone某些版本不符合AMD标准)
require.config({
baseUrl: "js/",
paths: {
"jQuery": "jquery.min",
"underscore": "underscore-min",
"backbone": "backbone-min"
},
shim: {
'underscore': {
exports: '_'
},
'backbone': {
deps: ['underscore', 'jQuery'],
exports: 'Backbone'
}
}
});
//shim属性定义不符合AMD标准加载模块文件的输出变量(exports)和依赖文件(deps)
//加载对应模块文件
require(['backbone'], function(Backbone){
var person = Backbone.Model.extend({
defaults: {
name: 'lbs',
age: 10
}
});
var me = new person();
console.log( me.get('name') +'/'+ me.get('age') );
});
认识Require的更多相关文章
- WCF : 修复 Security settings for this service require Windows Authentication but it is not enabled for the IIS application that hosts this service 问题
摘要 : 最近遇到了一个奇怪的 WCF 安全配置问题, WCF Service 上面配置了Windows Authentication. IIS上也启用了 Windows Authentication ...
- webpack解惑:require的五种用法
我之前在 <前端搭环境之从入门到放弃>这篇文章中吐槽过,webpack中可以写commonjs格式的require同步语法,可以写AMD格式的require回调语法,还有一个require ...
- express全局安装后无法通过require使用
今天入门了一下express,首先安装依赖. npm install express -g; npm install body-parser -g; npm install cookie-parser ...
- require() 源码解读
2009年,Node.js 项目诞生,所有模块一律为 CommonJS 格式. 时至今日,Node.js 的模块仓库 npmjs.com ,已经存放了15万个模块,其中绝大部分都是 CommonJS ...
- 项目开发(Require + E.js)
最近在做的几个项目,分别用了不同的框架跟方式,有个H5的项目,用了vue框架, 这个项目我还没有正式加入进去, 等手头的这个项目完成就可以去搞vue了, 现在手头的这个项目是一个招聘的项目, 用到了N ...
- Javascript模块化编程(三):require.js的用法
Javascript模块化编程(三):require.js的用法 原文地址:http://www.ruanyifeng.com/blog/2012/11/require_js.html 作者: 阮一峰 ...
- Torch Problems: require some packages doesn't work
I've recently got a problem. require 'cutorch' doesn't work. But it was ok yesterday, although I hav ...
- javascript模块化编程(三):require.js用法
本文来自阮一峰 这个系列的第一部分和第二部分,介绍了Javascript模块原型和理论概念,今天介绍如何将它们用于实战. 我采用的是一个非常流行的库require.js. 一.为什么要用require ...
- PHP中include()与require()的区别说明
require 的使用方法如 require("MyRequireFile.php"); .这个函数通常放在 PHP 程序的最前面,PHP 程序在执行前,就会先读入 require ...
- CCLuaLoadChunksFromZIP加载后的require路径问题
对于require来说,在LUA中的机制就是搜索path路径了.但对于CCLuaLoadChunksFromZIP加载的LUA文件来说,require的路径又是怎么样的呢? 我在服务器上有一个 oox ...
随机推荐
- hdu1054(最小顶点覆盖)
传送门:Strategic Game 题意:用尽量少的顶点来覆盖所有的边. 分析:最小顶点覆盖裸题,最小顶点覆盖=最大匹配数(双向图)/2. #include <cstdio> #incl ...
- exit()和_exit()和return
exit()和return的差别: 依照ANSI C,在最初调用的main()中使用return和exit()的效果同样. 但要注意这里所说的是"最初调用".假设main()在一个 ...
- linux centos 卸载jdk
1.先看看OpenJDK的安装包 $ rpm -qa |grep java tzdata-java-2013b-1.el6.noarch java-1.6.0-openjdk-1.6.0.0-1.61 ...
- SharePoint 2013的HTML5特性之响应式布局
今天偶然看到一本书<Pro SharePoint 2013 Branding and Responsive Web Development>,看到SharePoint 2013基于HTML ...
- 命令含执行JAVA程序
1.当类没有包名时 javac Test.java java Test 2.当有包名情况下 package com.me.Test; javac -d . Test.java java com.m ...
- SE 2014年5月22日
一. 用自己的理解描述 tunnel接口状态 up和down的情况都有哪些 Tunnel接口的状态UP:隧道的目标有可达路由. Tunnel接口的状态Down:隧道的目标路由不可达. 如图配置实验 ...
- MyReport演示下载连接和相关文章索引
演示地址 Flex集成方式 (旧版2.6) HTML集成方式 MyReport产品站点 NEW 相关文章 ------------------------2.6下面版本号--------------- ...
- C# 使用Tuple传递多个参数
Tuple是基于.NET Framework 4.0 及以上版本才有的.微软称它为元组,如果有三个参数那就是三元组.如 Tuple(T1, T2, T3) Tuple的命名空间在 System 很短吧 ...
- Learning To Rank之LambdaMART前世今生
1. 前言 我们知道排序在非常多应用场景中属于一个非常核心的模块.最直接的应用就是搜索引擎.当用户提交一个query.搜索引擎会召回非常多文档,然后依据文档与query以及用户的相关程度对 ...
- Linux内核的同步机制---自旋锁
自旋锁的思考:http://bbs.chinaunix.net/thread-2333160-1-1.html 近期在看宋宝华的<设备驱动开发具体解释>第二版.看到自旋锁的部分,有些疑惑. ...