我有以下代码段。
import {English as en} from 'languages/en.js'
import {Spanish as es} from 'languages/es.js'
console.log(this.lang) // es
我正在尝试使用this.lang
字符串调用相应的导入模块。但不确定如何调用该模块。
window[this.lang]
不起作用。
有什么建议吗?
答案 0 :(得分:0)
创建一个对象并在其中查找lang
:
const result = { es, en }[this.lang];
使用全局范围(也称为window
)会使您陷入真正的麻烦,这就是为什么它被视为反模式(以及所有这些ES 6功能let
,const
, import
通过使“全局变量”不泄漏到全局范围来强制执行此操作,因此您不能在window
上访问它们。