gpt4 book ai didi

ecmascript-harmony - ES6 模块与 HTML 导入

转载 作者:行者123 更新时间:2023-12-04 02:05:10 26 4
gpt4 key购买 nike

HTML ImportsWeb Components 的一部分规范并提供一种方法来处理 Web 上的依赖关系。 ES6 模块也做同样的事情,但只是针对 Javascript 代码。

两者将如何协同工作有明确的说明吗?

编辑:一个例子:在我最近的一个项目中,我有两个 Javascript 组件(文件),其中一个依赖于另一个,但是任何 HTML 代码(它是另一个组件)都可以使用它们中的任何一个。因此,当我在 HTML 中包含依赖脚本时,我也不想包含父脚本(避免手动依赖处理)。除了将 ES6 模块与脚本包含混合之外,似乎没有明确定义的方法可以做到这一点。我看到的唯一选择是为每个组件维护一个单独的文件,并指定所需的文件和依赖项,例如 component.io。

最佳答案

Web 组件如何与 ES6 模块交互尚未最终确定,但至少有两种选择。
ES6 有 realms 的概念.如果两个 iFrame 中有 JavaScript,那么这两个 iFrame 可以相互通信并来回传递数据。但他们在不同的领域。这意味着您可以修改 Array.prototype一个对象而不影响另一个对象。每个 Web 组件很可能都有自己的领域,因此它们不会相互干扰。
每个领域都有一堆全局对象,其中包括(很可能,规范尚未最终确定)Loader目的。您可以创建 Loader 的新实例并使用它来加载模块。领域中已经存在一个,这是默认的。每个Loader实例有它自己的已定义模块列表,因此每个 Web 组件都可以被赋予它自己的 Loader实例。
我不确定 webcomponents 是否会被赋予不同的 Realms或不同Loader对象,但不同的 Web 组件很可能无法相互干扰。

关于ecmascript-harmony - ES6 模块与 HTML 导入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21177267/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com