首页 > 解决方案 > toLocaleString() 在 Android 中不适用于 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

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

有什么建议么?

标签: javascriptandroidreact-nativetimestampdatetime-format

解决方案


不幸的是,toLocaleString()不适用于Android。请检查以下链接

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

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',
        },
 }

传递 locale 属性和格式的类型:

const result = dateTimeMapping[locale][type];

关于数字格式,您可以在此处阅读更多内容。


推荐阅读