requirejs 使用实例

作为前端开发人员,模块化编程是其身边一个重要工具。它可以规范你的代码,解决由于多个js之间的可能存在的依赖关系,并且提升网页渲染速度。

首先来个简单的例子,实现一个简单的jia,jian,cheng,chu。

先看例子:

<head>
    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
    <title></title>
    <script type="text/javascript" data-main="page.js" src="require.js"></script>
</head>
<body>
</body>

很简单,data-main设置主模块page.js。这个模块一开始就加载执行。

console.log("马上执行")
require([‘math‘], function( _m ){
    console.log(_m)
    console.log(_m.jia(1,2))
})

然后是math.js

define(function(){
    var jia = function(a, b){
        return a+b;
    }
    var jian = function(a, b){
        return a-b;
    }
    var cheng = function(a, b){
        return a*b;
    }
    var chu = function(a, b){
        return a/b;
    }

    return {
        jia: jia,
        jian: jian,
        cheng: cheng,
        chu: chu

    }
})

输出:

马上执行

Object { jia=function(), jian=function(), cheng=function(), 更多...}

3

这个例子非常简单,所有文件都在同一个目录下。但是还有一些情况

情景一:如果我的js是在另外一台主机,如何使用require.js

还是上面的html,main.js改成

requirejs.config({
    paths: {
        ‘jquery‘: ‘http://skin.huitu.com/js/jquery-1.8.3.min‘//注意,这里没有.js。在这里很容易出错
    }
});

require([‘jquery‘], function ($) {
    console.log($)
});

情景二:我在维护一个稳定的项目,之前的开发没有用到require.js,新需求的开发我想用require.js。

require([‘old1‘, ‘old2‘, ‘old3‘]);

requirejs.config({
    paths: {
        ‘jquery‘: ‘http://skin.huitu.com/js/jquery-1.8.3.min‘
    }
});

require([‘jquery‘], function ($) {
    console.log($)
});
时间: 2024-08-03 05:45:38

requirejs 使用实例的相关文章

requirejs 使用实例r.js打包

在这里,请先看基础文章与相关技术文档: 安装: npm init npm install requirejs --save npm install [email protected]1.11.1 --save 创建基本目录: js/main.js&test.js css/index.css index.html build.js copy requirejs目录下的r.js到根目录 创建导出目录:one 测试目录创建完成! index.html <!DOCTYPE html> <

backbonejs和requirejs的实例

define(['login', 'ApplyFlapper'], //为ApplyFlapper为ApplyFlapper.js文件 function (loginView, applyFlapperView) { //applyFlapperView的view var Router = Backbone.Router.extend({ routes: { '': 'showHome', 'applyFlapper': 'showApplyFlapper', //对应的是页面applyFlap

RequireJS实例分析

随着JS越来越庞大,已经不仅仅是以前复制粘贴做特效的时代了,JS越来越偏向于业务逻辑与应用.恰逢Node的流行,JS在web开发中占有越来越重要的地位.由于JS代码庞大,文件数目多,传统的使用<script src=""></script>会带来很多性能的问题,因此requirejs可以为我们提供两种解决思路: 1 模块化组织JS 2 异步加载JS文件 有了这两种解决办法,能有效的帮助我们解决前端代码库的组织难题. 本文下面就模拟一个小例子,由于并没有应用实践,

TodoMVC中的Backbone+marionetteJS+requireJS例子源码分析之一

Marionette牵线木偶,Backbone是脊骨的意思,Marionette是基于Backbone做扩展库,可以理解为把脊骨骨架绑线扯着变成牵线木偶动起来哈哈,使backbone更易使用呵呵! 构建或者扩展了很多新的东西,如:Application,Region,ItemView,CollectionView,CompositeView,LayoutView,AppRoute,Controller等等,把很多重复性的工作变成配置,程序入口引入了集中处理器Application,貌似Mario

requireJS使用

requireJS使用 requirejs使用 开篇引题 为什么使用require.js require.js加载 配置require:config方法 define方法:定义模块 require方法:调用模块 require合并 实例列表 参考文档 开篇引题 随着网站逐渐变成"互联网应用程序",嵌入网页的Javascript代码越来越庞大,越来越复杂.网页越来越像桌面程序,需要一个团队分工协作.进度管理.单元测试等等......开发者不得不使用软件工程的方法,管理网页的业务逻辑. J

使用requireJS实现模块化编程

RequireJS是一个工具库,主要用于客户端的模块管理.他可以让客户端的代码分成一个个模块,实现异步或动态加载,从而提高代码的性能和可维护性.他的模块管理遵守AMD规范(Asynchronous Module Definition). RequireJS的基本思想就是:通过define方法,将代码定义为模块:通过require方法,实现代码的模块加载. 第一步,将requirejs.js文件使用script标签嵌入到网页,然后即可以使用requireJS进行模块化编程. <script dat

requirejs代码结构分析

一.函数入口函数. req = requirejs = function (deps, callback, errback, optional) { //Find the right context, use default var context, config, contextName = defContextName; //“_” //deps 是对象的话,则可能是config. // Determine if have config object in the call. if (!is

angularJS和requireJS和angularAMD

最近因为要用到angularJS开发项目,因为涉及到的静态资源比较多,所以想把js文件通过requireJS来按需加载,这两个框架以前都使用过,但是结合到一起还没有用过,那就试一下,看能否达到目的. requireJS是为了实现js文件异步加载和管理模块之间依赖性的框架,详情请看阮一峰 require.js的用法和RequireJS 中文网这里就不做介绍了. 我们先来创建模版容器index.html <!DOCTYPE html> <html> <head> <t

requirejs-define jquery 快速初学实例(一)

原文地址:http://6yang.net/articles_view.php?id=1103 2011-10-18 13:12:01 by [6yang], 1029 visits, 收藏 | 返回 实例说明: DEMO[require]:http://6yang.net/myjavascriptlib/requirejs/demo/d1.html DEMO[require-define]:http://6yang.net/myjavascriptlib/requirejs/demo/d2.h