这些是我的示例文件:
<!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上的完整列表)完全受支持:
在较旧的浏览器中,您可能需要在浏览器中启用一些标志:
chrome:flags
dom.moduleScripts.enabled
about:config
about:flags