有require.js只在我真正需要它时加载我的文件

时间:2012-05-06 21:29:52

标签: requirejs

我知道这是require.js的重点,但在我的情况下它并没有这样做。

我正在创建单页Backbone.js应用程序。应用程序的主要入口点是通过路由器。假设我有3条路线:

users: function(){
    require('users');
},
products: function(){
    require('products');
},
groups: function(){
    require('groups');
},

根据我调用的函数,我想加载文件,但require.js不会这样做。

相反,它会在有要求的地方下载我的完整网站的所有文件。我甚至没有调用该函数,但它加载了该文件。

有没有办法让require.js按原样运行,只有在我实际进入函数时才下载文件。

1 个答案:

答案 0 :(得分:6)

您基本上可以在代码段中执行操作。它看起来像这样:

users: function(){
    require(['users'], function(Users){
        //Code
    });
},
products: function(){
    require(['products'], function(Products){
        //Code
    });
},
groups: function(){
    require(['groups'], function(Groups){
        //Code
    });
},