toLocaleString() 在 Android 中不适用于 React Native

toLocaleString() is not working in Android for React Native

我正在尝试在我的应用程序中设置一些日期格式。

假设我得到的日期戳像 "1573457092953.63" 我正在尝试按照以下格式进行操作。

"11/11/2019, 1:17:00"

所以,我用过date.toLocaleString()

它在 iOS 中工作正常,但是,在 Android 中出现问题。

In iOS getting like 11/11/2019, 1:17:00 PM
Android getting like Mon Nov 11 1:17:00

如何解决这个问题,即使我没有从其他论坛得到任何东西。

有什么建议吗?

遗憾的是,toLocaleString() 不适用于 Android。请检查以下 link.

解决方法是创建自定义映射并使用它:

const dateTimeMapping = {
        en: {
            onlyTime: 'h:mm A',
            shortDate: 'ddd, D MMMM',
            longDate: 'D MMMM YYYY h:mm A',
        },
        de: {
            onlyTime: 'H:mm',
            shortDate: 'ddd, D. MMMM',
            longDate: 'LLL',
        },
        it: {
            onlyTime: 'H:mm',
            shortDate: 'ddd D MMMM',
            longDate: 'D MMMM YYYY HH:MM',
        },
 }

传递语言环境 属性 和格式类型:

const result = dateTimeMapping[locale][type];

关于数字格式,可以多看

我终于找到了一个名为

的库

moment

"moment": "^2.24.0" // in package.json file

import Moment from 'moment';

Moment(date).format('DD/MM/YYYY, hh:mm:ss')
Output is 11/11/2019, 1:17:00

希望这对以后的人有所帮助。

iOS 和 Andorid 域都可以正常工作。