如何在优化文件之外的requirejs中实例化优化模块?

时间:2013-04-02 15:38:32

标签: javascript requirejs r.js

在我的require.config中,我为我经常使用的几个路径创建了shorthands:

require.config({
    paths: {
        text: 'components/requirejs-text/text',
        url: 'config/url',
        List: 'modules/List/main'
        ...

然后在各个页面上(在单独的脚本文件中),我实例化一个这样的模块:

require(['List'], function(List){ new List; }); 

我的计划是将所有文件优化为一个文件,需要并在我的示例中实例化一个模块,但由于require.config的路径不再真正相关(因为我现在只有main.build.js )如何实例化我的模块

更新:让我改写一下:

我正在尝试在优化的构建脚本之外实例化一个模块,我该怎么做?

3 个答案:

答案 0 :(得分:1)

将您的配置移动到require.js库之后的单独位置(在头部内联,或在JS文件中)。现在您可以在将来加载任何模块,无论首先加载哪些模块,它们都能够读取配置。

答案 1 :(得分:1)

只要您想要包含List模块,只需创建一个指向优化文件的新路径配置。

require.config({
    paths: {
        'List': 'js/myApp' 
    }
});
require(['List'], function(List) {
    ...
});

答案 2 :(得分:0)

我认为,我们有一个名为appInit.js的文件,它实例化我们的应用程序,所以在此之后所有其他模块都应该根据需求进行实例化,并且从每个module.js实例化模块也不是很好的做法,

考虑单个Application实例,所有其他实例应该作为组件,服务等与该应用程序相关,

每个开发人员都有自己的编码风格,选择你喜欢的...

如果你担心模块的路径,在构建之后不要担心路径只是模块的名称,它应该工作,但动态加载或创建的模块将不再工作。