使用require.js的基本文件结构

时间:2014-04-23 08:09:31

标签: javascript requirejs

如果我在 page1.html 上有 page1.html page2.html ,我需要使用一些需要 jquery 和 page2.html 需要使用一些需要 jquery 下划线的脚本。

根据我的小知识,我只是使用

page1.html
<script src="jquery.js"></script>
<script src="page1.js"></script>
page2.html
<script src="jquery.js"></script>
<script src="underscore.js"></script>
<script src="page2.js"></script>

如何通过从underscore.js获取优势来构建我的应用程序?

感谢。

1 个答案:

答案 0 :(得分:1)

在html body标签的底部添加require.js,添加

<script src="js/libs/require/require.js" data-main="js/main"></script>

在名为&#39; main.js&#39;的文件中使用require.js。你说这个:

//Require.js 
require.config({

    baseUrl: 'js', 

    paths   : {
        jquery                  : '//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min', 
        underscore              : 'libs/underscore/underscore-min'
    },  

    shim    : {
        underscore: {
          exports: '_'
        }
    }
}); 

在自定义js文件(您要创建的模块)中,添加:

define([
  'jquery', 
  'underscore', 
  'page2'
], function($, _, Page2){

    //Specify module here 
    var someObj = {}; 
    return someObj
}); 

这应该是define或require,具体取决于模块的用途。 如您所见,您还可以添加自定义javascript文件,如果它们包含您当前模块中所需的任何javascript函数。

如果是多页面应用程序,我找到了这个资源:
https://github.com/requirejs/example-multipage

  

该项目展示了如何设置基于requirejs的多页项目   有以下目标:

     

每个页面都使用常见和特定于页面的模块   所有页面共享相同的requirejs配置。在优化构建之后,   常用项应位于共享公共层中,并且特定于页面   模块应位于特定于页面的层中   执行构建后,不必更改HTML页面。

这是你正在寻找的吗?