Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/476.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何添加矩。locale()_Javascript_React Native_Momentjs - Fatal编程技术网

Javascript 如何添加矩。locale()

Javascript 如何添加矩。locale(),javascript,react-native,momentjs,Javascript,React Native,Momentjs,我现在有英语约会。我正在尝试添加moment.locale,以便用法语约会,但它不起作用。应该创建一个变量来实现这一点吗?或者只是在某处添加moment.locale() <View style={{flex: 1}}> <Text style={{color: 'white', textAlign: 'center', marginTop:20}}> {moment(element.dateMa

我现在有英语约会。我正在尝试添加
moment.locale
,以便用法语约会,但它不起作用。应该创建一个变量来实现这一点吗?或者只是在某处添加
moment.locale()

 <View style={{flex: 1}}>
        <Text style={{color: 'white', textAlign: 'center', marginTop:20}}>
              
              {moment(element.dateMatch).format('LLLL')}
            </Text>
        </View>

{矩(element.dateMatch).format('LLLL')}

有了这段代码,我就有了英文日期。

您需要执行以下操作,在应用程序初始化或任何需要的地方导入您的区域设置

有两种方法,一种用于旧版本,另一种用于新版本

//从2.8.1开始
moment.locale(字符串);
moment.locale(字符串[]);
locale(字符串、对象);
//在2.8.1中已弃用
瞬间。朗(弦);
moment.lang(字符串[]);
lang(字符串、对象);
然后,您需要导入与您的语言相关的区域设置。我将为法语添加一个示例

moment.locale('fr'{
月份:“janvier_février_mars_avril_mai_juin_juillet_aoút_septembre_octobre_novenbre_décembre”。拆分(“'),
月短:“1月、1月、2月、9月、10月、11月”分割(“分割”),
monthsParseExact:没错,
工作日:“dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi”。拆分(“'),
工作日短:“昏暗、黑暗、黑暗、黑暗、黑暗、黑暗、黑暗、黑暗、黑暗、黑暗、黑暗、黑暗、黑暗、黑暗、黑暗、黑暗”,
工作日的主题是:“迪鲁·马·梅耶·维夫·萨”。分开(“UU”),
工作日SparSeexact:没错,
longDateFormat:{
LT:'HH:mm',
LTS:'HH:mm:ss',
L:'DD/MM/YYYY',
LH:‘D MMMM YYYY’,
LLL:'D MMMM YYYY HH:mm',
LLLL:'dddd D MMMM YYYY HH:mm'
},
日历:{
sameDay:“[Aujourd'huiáLT”,
下一天:“[DemaináLT”,
下一节:'dddd[a]LT',
最后一天:“[Hierá]LT”,
上周:“dddd[dernieráLT”,
萨米尔斯:“我
},
相对时间:{
未来:“dans%s”,
过去:'il y a%s',
s:‘第二个问题’,
m:‘一分钟’,
mm:“%d分钟”,
h:‘你是谁’,
hh:“%d heures”,
d:‘联合国日’,
dd:“%d jours”,
M:‘我的名字’,
MM:“%d mois”,
y:‘un an’,
yy:“%d ans”
},
dayOfMonthOrdinalParse:/\d{1,2}(er|e)/,,
序号:函数(数字){
返回编号+(编号==1?'er':'e');
},
美国公司:/PD | MD/,
isPM:功能(输入){
返回输入。字符(0)='M';
},
//如果meridiem装置未在12左右分开,则执行以下操作:
//此函数(查看locale/id.js以获取示例)。
//梅里迪姆小时:功能(小时,梅里迪姆){
//返回时间/*0-23小时,给定梅里迪姆代币和1-12小时*/;
// },
梅里迪姆:功能(小时、分钟、岛屿){
返回时间<12小时?'PD':'MD';
},
周:{
道琼斯指数:1,//星期一是一周的第一天。
doy:4//用于确定一年中的第一周。
}
});
然后你可以使用任何你想要的功能。您还可以在默认的
en
和刚刚定义的
fr
语言环境之间切换

moment.locale('fr');
力矩(1316116057189).fromNow();//我是你的朋友
地点('en');
力矩(1316116057189).fromNow();//一小时前

这是我在文件顶部初始化区域设置的内容

import moment from 'moment';
import 'moment/locale/fr';
import 'moment/locale/nl';
每个受支持的语言都应该明确包括在内,因为react本机捆绑包是完全预先构建的

再进一步,通过将区域设置设置为fr(或任何其他导入的区域设置),可以激活该区域设置:


你们不需要利用这个时刻。 您可以使用js中函数的
toLocaleDateString

const options = { weekday: 'long', year: 'numeric', month: 'long', day: 'numeric' };
console.log(element.dateMatch.toLocaleDateString('fr-FR', options));
// example output: jeudi 20 décembre 2012

你们还不需要把它加载到力矩中吗?因为您正在加载的文件只是定义了不同的语言设置。更新了我的答案以回答您的问题谢谢它正在使用导入'moment/locale/fr'!
const options = { weekday: 'long', year: 'numeric', month: 'long', day: 'numeric' };
console.log(element.dateMatch.toLocaleDateString('fr-FR', options));
// example output: jeudi 20 décembre 2012