在IE8中使用requireJS未定义把手

时间:2015-02-13 22:26:18

标签: internet-explorer-8 requirejs handlebars.js

我正在使用把手v3.0.0(非AMD)和requireJS,配置如下:

require.config({
  deps: [ 'main' ],
  paths: {
    'handlebars' : 'lib/handlebars'
  },
  shim: {
    handlebars: {
      exports: 'Handlebars'
    }
  }
});

并且这样称呼它:

define( [
  'handlebars'
],
function( Handlebars ){
  'use strict';

  var HBS = Handlebars.default;
...

这适用于所有现代浏览器,IE9,IE10& IE11但不是IE8。 在IE8中未定义把手,如下所示:

Handlebars IE8 bug

我正在使用非AMD版本(因此我很简单),实际上我复制并粘贴了此CDN链接抛出的代码:

<script src="//cdnjs.cloudflare.com/ajax/libs/handlebars.js/3.0.0/handlebars.js"></script>

注意 - 答:如果我在索引页面中包含上述脚本标记而不是将其与requireJS一起使用,则把手会起作用。

注意-B:已经尝试过使用AMD版本,同样的事情。

注意 - C:我正在使用虚拟机进行IE8测试。

注意-D:IE8文档模式是IE8标准

对此的任何帮助都将非常感激。

0 个答案:

没有答案