我只在 IE 中遇到与 require.js 插件有关的错误。
我在 require.js 中有以下代码(第 1061 行):
if (plugin.normalize) {
IE 8 返回此错误:
消息:'normalize' 为空或不是对象
线路:1061 字符:25
我检查了调试器并且插件对象存在,规范化是未定义的。在 javascript 中,这应该评估为“假”,并且不符合 if 条件。但是,由于某种原因,IE 会抛出此错误,而不是让我的页面正确加载。有谁知道为什么会这样?
具有讽刺意味的是,如果我将第 1061 行更改为:
if (plugin.normalize !== undefined && plugin.normalize !== null && plugin.normalize !== false) {
然后IE8成功运行代码......问题是,这应该是等效的代码,我不能为了避免像这样的IE错误而改变像require.js这样的第三方包。