生成es6模块导出

Tom*_*Tom 2 javascript module ecmascript-6

我想以编程方式为模块生成导出,这在es6中是否可能?

这些方面的东西:

const ids = ['foo', 'bar', 'baz'];

ids.forEach(id => {
    export const [id.toUpperCase()] = id;
});
Run Code Online (Sandbox Code Playgroud)

Ber*_*rgi 7

不,这不对.出口和进口需要在ES6模块中进行静态分析.

这种无顶级export声明不仅是语法错误,而且还是您尝试使用动态名称声明变量.括号表示法仅保留用于计算属性.

因此,如果您要以编程方式生成模块导出,则需要动态生成模块源文本(作为构建过程的一部分).