在requirejs中加载运行时配置的超时

时间:2014-07-21 08:06:53

标签: javascript html5 requirejs

我收到运行时配置的加载超时错误, common.js 是我的运行时配置

正如您在下面看到的那样,我已经为从common.js加载的文件定义了 waitseconds 等于0但是我为common.js本身获取了loadTimeout。

的index.html

<script type="text/javascript" src="js/vendor/require.js"></script>
    <script>

        require(['./js/common'],
        function (common) {
            'use strict';
            require(['plot/app', 'es6shim']);
        });
    </script>

common.js

requirejs.config({
    baseUrl: 'js',
    waitSeconds: 0,    // Allowing the browser to load all modules without time limit
    paths: {
        // 3rd party
        es6shim: 'vendor/es6-shim.min',
        jquery: 'vendor/jquery-1.10.1.min',
        jqueryUI: 'vendor/jquery-ui.min',
        lodash: 'vendor/lodash.min',
        mockjax: 'vendor/jquery.mockjax',
        hammer: 'vendor/hammer.min'      
    },

    shim: {
        mockjax: { deps: ['jquery'] },
        jqueryUI: { deps: ['jquery'] },
        hammer: { deps: ['jquery', 'jqueryUI'] }
    }
});

让我知道在这种情况下可以做些什么,因为 common.js 本身有时不会被加载,从而导致加载超时错误。

注意: - 由于构建配置,我没有在index.html中编写运行时配置,因为配置(common.js)对于其他应用程序很常见。

1 个答案:

答案 0 :(得分:0)

您的问题似乎并没有试图找出为什么common.js可能花了这么长时间来检索超时被触发的问题。加载这样一个简单的脚本应该发生超时似乎很奇怪,但我认为此时你不关心。

要在加载common.js之前增加超时,请尝试在index.html中添加以下内容,以提供在common.js加载之前应用的基线RequireJS配置设置:

<script>
    require = { waitSeconds: 0 };
</script>

<script type="text/javascript" src="js/vendor/require.js"></script>
...