【发布时间】:2012-08-09 13:44:05
【问题描述】:
我使用 RequireJS 2.0.4 来加载 Java Script 文件。
在 Chrome、Firefox 和 IE9 中可以正常工作,但在 IE8 中会出错。
我将true 的值设置为enforceDefine 配置属性。
错误信息是no define call for ...
【问题讨论】:
标签: javascript internet-explorer-8 requirejs
我使用 RequireJS 2.0.4 来加载 Java Script 文件。
在 Chrome、Firefox 和 IE9 中可以正常工作,但在 IE8 中会出错。
我将true 的值设置为enforceDefine 配置属性。
错误信息是no define call for ...
【问题讨论】:
标签: javascript internet-explorer-8 requirejs
这发生在 enforceDefine 设置为 true 并且脚本是 加载任一:
- 没有调用define()来声明一个模块。
- 或者是 shim 配置的一部分,该配置指定了可以检查加载的全局字符串属性,但检查失败。
或者,如果错误仅出现在 IE 中而不出现在其他浏览器中(其中 可能会产生脚本错误,脚本大概是:
- 引发 JavaScript 语法/评估错误。
- 或者 IE 中出现 404 错误,导致脚本加载失败。
这些 IE 行为导致 IE 在检测脚本错误方面的怪癖。 修复它:
- 如果模块调用define(),请确保通过在脚本调试器中调试到达define调用。
- 如果是 shim 配置的一部分,请确保 shim 配置的导出检查正确。如果在 IE 中,请使用脚本调试器检查 HTTP 404 错误或 JavaScript sytnax 错误。
【讨论】: