首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >toLocaleString()在Android中不适用于

toLocaleString()在Android中不适用于
EN

Stack Overflow用户
提问于 2019-11-11 07:59:16
回答 2查看 3.3K关注 0票数 3

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

假设我得到了像"1573457092953.63"这样的日期标记,并且我试图像下面的格式那样做。

代码语言:javascript
复制
"11/11/2019, 1:17:00"

所以,我使用了date.toLocaleString()

它在iOS上运行得很好,但在安卓系统中却出现了问题。

代码语言:javascript
复制
In iOS getting like 11/11/2019, 1:17:00 PM
Android getting like Mon Nov 11 1:17:00

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

有什么建议吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-11-11 13:33:34

我终于找到了一个叫做

力矩

代码语言:javascript
复制
"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和安道尔域都很好。

票数 2
EN

Stack Overflow用户

发布于 2019-11-11 10:04:51

不幸的是,toLocaleString()不适用于安卓系统。请检查以下链接

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

代码语言:javascript
复制
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属性和格式的类型:

代码语言:javascript
复制
const result = dateTimeMapping[locale][type];

关于数字格式,您可以阅读更多的这里

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58797495

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档