当前位置: 首页 > 面试题库 >

ES2015导入在Firefox中不起作用(即使在顶级)

林雅畅
2023-03-14
问题内容

这些是我的示例文件:

<!DOCTYPE html>
<html>
<head>
  <title>Test</title>
  <script src="t1.js"></script>
</head>
<body></body>
</html>

t1.js:

import Test from 't2.js';

t2.js:

export const Test = console.log("Hello world");

当我在Firefox 46中加载页面时,它返回“ SyntaxError:导入声明可能仅出现在模块的顶层”
–但是我不确定import语句可以在此处获得多少顶层。此错误是红色鲱鱼吗,并且尚不支持导入/导出吗?


问题答案:

实际上,您得到的错误是因为您需要明确声明您正在加载模块-只有这样,才允许使用模块:

<script src="t1.js" type="module"></script>

。推荐阅读。

这些浏览器版本(及更高版本;在caniuse.com上的完整列表)完全受支持:

  • Firefox 60
  • Chrome (desktop) 65
  • Chrome (android) 66
  • Safari 1.1

在较旧的浏览器中,您可能需要在浏览器中启用一些标志:

  • Chrome Canary 60 –中的实验性Web平台标记后面chrome:flags
  • Firefox 54 –中的dom.moduleScripts.enabled设置about:config
  • Edge 15 –在中的“实验JavaScript功能”设置之后about:flags


 类似资料:
  • 以下是我的示例文件: T1.js: T2.js: 当我在Firefox46中加载该页面时,它返回“SyntaxError:import declarations Mays only Account at top level of a module”--但我不确定import语句在这里还能达到多少顶级。这个错误是不是一个错误,是不是还不支持导入/导出?

  • 问题内容: 我正在使用节点v6.0.0,并想使用ES2016(ES6)。但是我意识到“导入”语法不起作用。“导入”不是ES2015中编写模块化代码的基础吗?我也尝试使用option 运行节点,但仍然遇到与“导入”相同的错误。这是代码。 没有“导入”的工作代码: 无法使用“导入”执行代码: server.js Number.js 我还检查了http://node.green/以查看受支持的es6,但

  • 问题内容: 我正在尝试通过图像在h1标签中填充文本的内容。按照我的理解;-),我正在html中执行以下操作: 并在css文件中: 事实是,它不能产生预期的结果……就是其中图像为彩色的文本。图像显示在div的整个背景上,而不仅显示在文本后面。此外,文本本身仍为黑色。 我正在Firefox上尝试。没有其他浏览器。 我错过了什么吗? 谢谢你的帮助。 问题答案: 虽然存在,但不存在,因此您将无法在Fire

  • 问题内容: 我里面有一个带有超链接标签的,看起来像这样: 这在Chrome和Safari中效果很好,但在Firefox(已测试20版)中不起作用。 怎么了? 问题答案: 为了使其在所有浏览器中都能正常工作,Firefox也必须将其更改为 或如Billy Moat所建议的那样进行引导,则无需您做

  • 问题内容: 我的CSS文件是: 这是我的HTML代码: 上面的代码在Firefox和Chrome中都可以正常运行。 这在Chrome浏览器中效果很好。但不是在Firefox中。这有什么问题? 问题答案: Firefox 在元素上和/或当源是图像时不支持与Chrome不同的属性。 表示内容图像。如果使用它,它应该有和。 从规格: src属性必须存在,并且必须包含有效的非空URL,该URL可能被引用非

  • 问题内容: 我有一个问题是悬停在Firefox中无法使用!它可以在Chrome,IE 9,IE 8和IE 7中运行。有人知道此问题以及如何解决此问题吗? CSS : HTML : 问题答案: 似乎悬停事件没有反馈到跨度。 尝试选择而不是