如何按名称访问 ES6 模块变量(来自模块本身)

keu*_*eul 5 javascript ecmascript-6 webpack

在 webpack 环境中,我有一个定义变量的 ES6 模块:

let my_var1 = 0
// other vars follow
Run Code Online (Sandbox Code Playgroud)

然后在同一个模块中,我为这个变量设置了一个 setter 函数,但我想按如下方式构建它:

export const set_var(name, value) => {
    // set "value" as new value for "name" variable of this module
}
Run Code Online (Sandbox Code Playgroud)

我想要做的是通过名称引用模块内部的变量,因此在外部调用类似set_var('my_var1', 5)

有没有办法访问“模块”对象?类似于 window 对象,但用于模块。

Nat*_*Ngs 0

不,这是不可能的。

您可以通过模块对象按名称访问导出的变量,但无法设置它们。
您也不能对 window 执行此操作,因为 let 不会创建属性。