gpt4 book ai didi

javascript - Harmony 模块 - 如何处理平台差异?

转载 作者:行者123 更新时间:2023-11-30 05:53:43 28 4
gpt4 key购买 nike

我对 node.js 的模块加载器以及新的和谐模块规范非常感兴趣。

总的来说,我喜欢这个规范,但是有一个问题我不确定它是如何解决的。

如果要构建一个跨平台的 JavaScript 库,有时需要在不同平台上使用不同的库来完成相同的工作。例如,node.js 中的 Buffer 模块在浏览器中不存在,因此必须编写一个抽象模块,根据平台加载不同的代码。

既然和谐在执行任何代码之前解决了依赖关系,它怎么知道它只需要为一个平台加载代码,而不是为所有平台加载代码?

在浏览器中,不想加载只运行在node.js中的代码,请问这个问题是怎么解决的?

最佳答案

在 ES6 中有两种加载模块的方法:(1) 静态加载,通过 module X at "url"声明(或它最终会出现的任何具体语法),或 (2) 动态地,通过 load loader 的方法.对于您的场景,您可能希望对那些依赖于上下文的模块使用选项 2。

在浏览器中,您还可以使用多个 <script>暂存您的程序。标签,但由于这不适用于 node.js,因此它可能对您的用例没有帮助。

关于javascript - Harmony 模块 - 如何处理平台差异?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13247370/

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