4

有谁知道为什么这个 git 存储库中列出的Aurelia-Typescript 项目只能在 Chrome 浏览器上运行?

是否有目前仅在 Chrome 上支持而不在 IE 或 FireFox 上支持的 ES6 功能?

编辑- 以下是来自 Firefox 34.0.5 的错误消息

改变对象的 [[Prototype]] 会导致您的代码运行非常缓慢;而是使用 Object.create core.js:130 创建具有正确初始 [[Prototype]] 值的对象

未声明 HTML 文档的字符编码。如果文档包含 US-ASCII 范围之外的字符,则文档将在某些浏览器配置中呈现乱码。页面的字符编码必须在文档或传输协议中声明。索引.html

“调试 [bootstrapper] 加载 HTMLImports polyfill” core.js:2518

Web 控制台日志记录 API(console.log、console.info、console.warn、console.error)已被此页面上的脚本禁用。

错误:脚本错误:webcomponentsjs/HTMLImports.min http://requirejs.org/docs/errors.html#scripterror require.js:166

4

2 回答 2

4

在第 15346 行(引导程序部分)的 aurelia-bundle.js 中,它检查是否支持 HTML 导入:

      if (!("import" in document.createElement("link"))) {
        logger.debug("loading the HTMLImports polyfill");
        toLoad.push(System.normalize("webcomponentsjs/HTMLImports.min", loaderName).then(function (name) {
          return System["import"](name);
        }));
      }

开箱即用的唯一支持它的浏览器仍然是 Chrome。对于其他浏览器,HTMLImports polyfill 加载失败,因为:

  1. webcomponentsjs目录中缺少HTMLImports.min.js
  2. 路径应该是“aurelia/webcomponentsjs/HTMLImports.min”。将webcomponentsjs移动到根路径可能会更好(我不知道如何通过捆绑来处理)
  3. 按照下面的@Chi Row 对 HTML 模板元素 polyfill 的回答(IE 11 似乎支持它们,所以它没有工作)。
于 2015-03-01T23:30:47.500 回答
3

@T Sol 上面的回答解决了 Firefox 的问题。

对于 IE,我从这个 git 存储库下载了 HTMLTemplateElements.js并将该文件放在根目录中。然后将文件重命名为 aurelia-html-template-elements.js。

这解决了IE的问题。

于 2015-03-02T02:34:51.270 回答