在IE7中,未定义的模块需要回调函数

时间:2013-05-20 21:42:40

标签: javascript module requirejs frontend

我的main.js文件中有一个非常简单的需求设置。这个代码块在Firefox,Chrome和所有IE 8 - 10中,但在IE7中,Sitewide对象未在某些页面加载中定义。这是非常零星的,但有一半时间警报返回“未定义”,其他时间返回“功能”。

想知道是否有人之前见过这样的事情或者可以提供一些建议吗?

// Includes File Dependencies
require([
"jquery",
"underscore",
"tipper",
"foundation_app",
"sitewide"
], function($, _, Tipper, foundation_app, Sitewide) {

    alert(typeof Sitewide);
    var sitewide = new Sitewide();

});

});

1 个答案:

答案 0 :(得分:1)

您有shim配置设置,但请记住,您仍然需要将它们作为依赖项引用才能正确加载。

Shim配置仅确保加载顺序,因此在主模块(或其他一些依赖模块)中将它们全部指定为依赖项,以便它们由RequireJS加载。