Javascript 导入数据后自动设置区域设置的时刻

Javascript 导入数据后自动设置区域设置的时刻,javascript,reactjs,momentjs,locale,translation,Javascript,Reactjs,Momentjs,Locale,Translation,我需要设计一个语言下拉列表,我们点击一种语言,它将改变所有的日期格式在该页后所选择的国家的格式 所以基本上我是用moment.js在我的React应用程序中实现的。我的想法是,当我选择一种语言时,它将调用函数moment.locale(language),然后我在页面中使用的所有日期格式都将更改 例如,如果我想换成法语。这是我的预期输出 import moment from 'moment'; import 'moment/locale/fr'; console.log(moment.local

我需要设计一个语言下拉列表,我们点击一种语言,它将改变所有的日期格式在该页后所选择的国家的格式

所以基本上我是用moment.js在我的React应用程序中实现的。我的想法是,当我选择一种语言时,它将调用函数
moment.locale(language)
,然后我在页面中使用的所有日期格式都将更改

例如,如果我想换成法语。这是我的预期输出

import moment from 'moment';
import 'moment/locale/fr';
console.log(moment.locale()); //expected output: en , actual output: fr 
moment.locale('fr');
console.log(moment.locale()); //expected output: fr , actual output: fr 
因此,我的问题是,区域设置将更改为
fr
,而不需要
moment.locale('fr')

我做了一些实验,通过导入locale数据
import'moment/locale/fr'
它将自动将区域设置为
fr
,而无需
片刻。区域设置('fr')
。我不想要,因为我只想在点击某个按钮后设置它。但同时,我还需要为
moment.js
加载此区域设置数据以正确翻译。
有人经历过这个吗??谢谢

我认为您可以像这样导入和设置区域设置

力矩配置

import 'moment/locale/fr';
import 'moment/locale/en';
import moment from 'moment';

//set up default locale
moment.locale('en')
组件1

import React from 'react'
import moment from 'moment'

class Component1 extends React.Component {

    componentDidMount(){
      moment.locale('fr')
    }

}
告诉我这是否是一个可行的解决方案


干杯

我将立即导入您需要的所有区域设置。@JanCiołek如果我导入所有区域设置,它将自动设置上次导入的区域设置。这将通过在页面加载时将其设置为“en”来解决问题。但是,它会遇到麻烦,因为以后,我希望浏览器记住用户以前选择的语言