3

我目前正在使用 require.js 编写示例应用程序,现在找到了 LazyLoad.js。

需要.js

require(["modul1", "modul2"],function(Modul1, Modul2){

懒加载.js

LazyLoad.js(["modul1", "modul2"],function(Modul1, Modul2){

这两者的区别在哪里?

对我来说,能够异步加载模块很重要,并且依赖管理应该自动完成。

4

1 回答 1

6

如果你想要自动依赖管理,那么 LazyLoad 是不合适的。如果您只需要运行时加载程序并且不关心以下内容,则 LazyLoad 是合适的:

  1. 定义模块
  2. 跟踪依赖项。从lazyload github(强调我的):

    当您需要一个小型、快速、安全的动态 JS 或 CSS 加载器,但不需要依赖管理的开销或大型脚本加载器提供的其他额外功能时,请使用 LazyLoad。

  3. 构建时优化的选项
看起来 LazyLoad 只是直接加载 URL,而不检查路径映射或该模块是否已加载。所以我认为你的第二个代码片段可能看起来像这样:

LazyLoad.js(["some/path/modul1.js", "some/path/modul2.js"],function(Modul1, Modul2){

而 RequireJS 会让你做这样的事情:

   require.config({
       paths: {
           modul1: 'libs/module1/blah.1.3.3-min',
           modul2: 'libs/module2/foo.2.7.2-min',
       }
   });

   require(["modul1", "modul2"],function(Modul1, Modul2){

并且还为在这些模块之前需要加载哪些文件定义垫片。

于 2013-08-29T16:01:39.380 回答