javascript - 将选项传递给 ES6 模块导入

标签 javascript module ecmascript-6 es6-modules

是否可以将选项传递给 ES6 导入?

你如何翻译这个:

var x = require('module')(someoptions);

到 ES6?

最佳答案

无法通过单个 import 语句完成此操作,它不允许调用。

所以你不会直接调用它,但你基本上可以做与 commonjs 对默认导出所做的相同的事情:

// module.js
export default function(options) {
    return {
        // actual module
    }
}

// main.js
import m from 'module';
var x = m(someoptions);

或者,如果您使用支持 monadic 的模块加载器 promise ,你也许可以做类似的事情

System.import('module').ap(someoptions).then(function(x) {
    …
});

有了新的import operator它可能会变成

const promise = import('module').then(m => m(someoptions));

const x = (await import('module'))(someoptions)

但是您可能不想要动态导入而是静态导入。

关于javascript - 将选项传递给 ES6 模块导入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29923879/

相关文章:

javascript - codeigniter 复选框内爆功能错误

angular - 为什么我的 Angular2 rc5 组件找不到我的共享管道?

php - ZF2 2 个同名模块,来自供应商的不同来源

javascript - react Hook : Stateless component VS Class component in the era of Hooks - which is better and recommended?

javascript - 如何使用脚本禁用输入类型 = DatePicker 中的所有 future 日期

javascript - Node js 创建服务器并连接

javascript - 用 jQuery 写的简单语句,我怎么用 PrototypeJS 写这个

python - PyPI:上传新版本时模块代码不会更新

javascript - 如何在 JavaScript 中使用解构——在将传递给 React 组件的辅助函数中?

javascript - 在 Node.js v 8.9.3 上,扩展类上的 Array.concat 方法会删除空值 - 为什么?