gpt4 book ai didi

javascript - 在 ES6 中有条件导入模块

转载 作者:行者123 更新时间:2023-12-03 00:21:07 24 4
gpt4 key购买 nike

我正在开发带有免费和专业组件的 React 库,其中包含用于生产的 rollup 和用于开发的 webpack。我想重用一个组件,但免费版本的变化较少。到目前为止,下面的代码是有效的,但是如果我们考虑 ssr 和 rollup 的 tree-shaking 支持,我们必须使用 es6 导入(至少据我所知)。有什么想法如何导入模块(如果存在)-> 如果不存在-导入另一个模块?

let DropdownMenuComponent;
try {
DropdownMenuComponent = require("./pro/DropdownMenuProComponent").default;
} catch (err) {
DropdownMenuComponent = require("./DropdownMenuComponent").default;
}

我尝试过动态导入,但它没有正确捕获错误,而模块丢失。

谢谢

最佳答案

实际上在第3阶段有一个建议,可以使用import()动态导入ES模块,也是babel presets are available ,在你的情况下会是这样的:

if (isProAccount()) 
import("./pro/DropdownMenuProComponent")
.then(DropdownMenuComponent => DropdownMenuComponent.something());
else
...

关于javascript - 在 ES6 中有条件导入模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54311034/

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