Javascript 以编程方式更改初始化选项

Javascript 以编程方式更改初始化选项,javascript,i18next,Javascript,I18next,我正在使用javascript库i18next实现多语言支持 我可以在初始化时设置备用语言等选项: i18n.init( { lng: "de", fallbackLng: ["en", "fr"], }); 但是,我需要能够在初始化后的任何时间以编程方式更改这些选项 我可以通过调用i18next.setLng(“en”)来更改语言,但是否有办法修改回退语言和其他选项,如sendMissing?选项保存在闭包中,因此它们对于所有初始设置都是通用的。 setL

我正在使用javascript库
i18next
实现多语言支持

我可以在初始化时设置备用语言等选项:

i18n.init(
    {   lng: "de",
        fallbackLng: ["en", "fr"],
    });
但是,我需要能够在初始化后的任何时间以编程方式更改这些选项


我可以通过调用
i18next.setLng(“en”)来更改语言
,但是否有办法修改回退语言和其他选项,如
sendMissing

选项保存在闭包中,因此它们对于所有初始设置都是通用的。
setLng
函数也只调用
init函数


因此,最好只调用
init函数
来应用新选项。它不应该在速度和时间上造成太大的开销,因为这些选项都保存在一个闭包中,而且i18n只有一个实例,无论如何。

有i18n.options可能会起作用。不知道会不会。我不使用i18n。我只是看了一下来源。您可以直接使用i18n.options[“fallbacking”]=[“en”,“fr”],但您可能必须以任何方式调用init,因为选项来自闭包。最好将选项保存在变量中,然后在重新初始化之前修改它们。顺便说一句,setLng只调用init函数。@QuentinEngles,如果
setLng
在内部调用init函数,我就没有理由使用它。我可以自己调用init函数并重置所有选项。我认为
setLng
可能是一种更有效的方法。如果你把它作为答案贴出来,我会接受的