IE8中的RequireJs:“没有定义调用...”

时间:2012-08-09 13:44:05

标签: javascript internet-explorer-8 requirejs

我使用RequireJS 2.0.4加载Java脚本文件。

它在Chrome,Firefox和IE9中正常运行,但在IE8中却出错。

我设置true配置属性的enforceDefine值。

错误消息为no define call for ...

1 个答案:

答案 0 :(得分:0)

  

当enforceDefine设置为true且脚本为true时会发生这种情况   加载:

     
      
  • 没有调用define()来声明模块。
  •   
  • 或者是一个shim配置的一部分,它指定了一个可以检查加载的全局字符串属性,并且该检查失败。
  •   
     

或者,如果错误仅在IE中显示,而在其他浏览器中则不显示(   可能会生成脚本错误,脚本可能是:

     
      
  • 提出了JavaScript语法/评估错误。
  •   
  • 或IE中脚本无法加载时出现404错误。
  •   
     

这些IE行为导致IE在检测脚本错误方面的怪癖。   解决它:

     
      
  • 如果模块调用define(),请确保通过在脚本调试器中调试来达到define调用。
  •   
  • 如果是shim配置的一部分,请确保shim config的导出检查是正确的。如果在IE中,请使用脚本调试程序检查HTTP 404错误或JavaScript sytnax错误。
  •   

来源:http://requirejs.org/docs/errors.html#nodefine