我对这些语句中的模块说明符所指的内容感到困惑:
export {bar} from "foo";
import {bar} from "foo";
什么是"foo"
参考?它不能是一个文件,因为它类似于"./foo"
。如果它不是一个文件,我认为它是一个 ID。 ID是如何定义的?
我正在从 js 文件导出,但导入将是内联 html 脚本的一部分(type="module"
)在火狐浏览器中。
浏览器版本(和浏览器设置)已经过验证,可以与 es6 模块一起使用。
提前致谢。
ES6 没有指定模块说明符指的是什么。
它确实就是这样:一个标识符。而已。
由环境将这些标识符解析为实际模块。加载器可能会将它们解释为相对文件路径、全局 ID、npm 模块名称或其他任何内容。
在浏览器中,<script type="module">花了一些时间来指定,但它终于来了。模块说明符"foo"
当前无效,浏览器将忽略该模块,因为它不知道如何处理它。它将需要解析为要加载的 URL 的内容。杰克·阿奇博尔德简洁地概括了它:
目前不支持“裸”导入说明符。有效模块
说明符必须匹配以下之一:
- 完整的非相对 URL。就像这样,放置时不会抛出错误
通过
new URL(moduleSpecifier)
.
- 以。。开始
/
.
- 以。。开始
./
.
- 以。。开始
../
.
其他说明符保留供将来使用,例如导入内置
模块。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)