Jquery,require.js,backbone.js。样品申请

时间:2012-07-13 05:24:00

标签: jquery backbone.js requirejs

模块加载器有什么用?它如何在JQuery中使用?  如何使用require.js作为模块加载器。 请分享示例应用程序。如果你有!!

1 个答案:

答案 0 :(得分:9)

好的,我进入部分

什么是模块加载器?

确定在Js中你不能使用导入指令(你可以在节点中使用。)这么多人都把他们的代码放在一起(甚至是他们使用的图书馆)所以他们不必加载任何东西,但这可以带来大型的js文件并为你的应用程序增加加载时间,其他人认为他们将代码分开并使用标签逐个加载,但这是不切实际的,因为你必须维护html页面中的所有定义,所以这里有require.js来帮你decopule你的代码创建模块然后按需加载。这样可以轻松地分离您的代码,并使小块更容易修复,维护或添加功能。

来自require.js docs

"当项目达到一定规模时,管理项目的脚本模块开始变得棘手。您需要确保按正确的顺序对脚本进行排序,并且您需要开始认真考虑将脚本组合在一起进行部署,以便只加载一个或非常少量的请求来加载脚本。 #34;

如何在JQuery中使用?

我会将问题更改为如何使用JQuery

您将在需要时加载Jquery作为依赖项,您有一个基本示例here

如何使用require.js作为模块加载器?

这里有一小段代码

html需要它

  <!DOCTYPE html>
  <html>
    <head>
          <title>jQuery+RequireJS Sample Page</title>
        <script data-main="scripts/main" src="scripts/require-jquery.js"></script>
      </head>
      <body>
          <h1>jQuery+RequireJS Sample Page</h1>
     </body>
    </html>

我们的main.js

require(["jquery", "jquery.alpha", "jquery.beta"], function($) {
    //the jquery.alpha.js and jquery.beta.js plugins have been loaded.
    $(function() {
        $('body').alpha().beta();
    });
});

配置的一部分

paths: {
        "jquery": "require-jquery"
    },

    modules: [
        {
            name: "main",
            exclude: ["jquery"]
        }

我希望这可以帮到你。您可以下载示例项目here

我将添加我的应用示例,以便您了解如何使用Backbone并要求

配置

require.config({
    shim: {
      'underscore': {
        deps: ['jquery'], //dependencies
        exports: '_' //the exported symbol
      },
      backbone: {
        deps: ['underscore', 'jquery'],
        exports: 'Backbone'
      }
    }

    paths: {
      jquery: 'libs/jquery/jquery-1.7.1.min',
      underscore: 'libs/underscore/underscore-min',
      backbone: 'libs/backbone/backbone-min',

    }

  });

示例模块

define(['jquery', 'underscore', 'backbone'], function($, _, Backbone) {
    //Your code Here
  });

玩得开心玩得开心: - )