Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ember.js/4.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
使用ember.js中的i18n在12小时和24小时时钟之间转换_Ember.js_Internationalization_Ember I18n - Fatal编程技术网

使用ember.js中的i18n在12小时和24小时时钟之间转换

使用ember.js中的i18n在12小时和24小时时钟之间转换,ember.js,internationalization,ember-i18n,Ember.js,Internationalization,Ember I18n,我想知道是否有一种方法可以使用i18n和ember.js在12小时和24小时时钟之间转换 I18n的日期对象中没有子午线,如中所述。但我不确定是否支持24小时和12小时之间的转换 var日期={ 日期名称:[“星期日”、“星期一”、“星期二”、“星期三”、“星期四”、“星期五”、“星期六”], 缩写日期名称:[“太阳”、“星期一”、“星期二”、“星期三”、“星期四”、“星期五”、“星期六”], 月份名称:[空,“一月”、“二月”、“三月”、“四月”、“五月”、“六月”、“七月”、“八月”、“九月

我想知道是否有一种方法可以使用i18n和ember.js在12小时和24小时时钟之间转换

I18n的日期对象中没有子午线,如中所述。但我不确定是否支持24小时和12小时之间的转换

var日期={
日期名称:[“星期日”、“星期一”、“星期二”、“星期三”、“星期四”、“星期五”、“星期六”],
缩写日期名称:[“太阳”、“星期一”、“星期二”、“星期三”、“星期四”、“星期五”、“星期六”],
月份名称:[空,“一月”、“二月”、“三月”、“四月”、“五月”、“六月”、“七月”、“八月”、“九月”、“十月”、“十一月”、“十二月”],
缩写月份名称:[空,“一月”、“二月”、“三月”、“四月”、“五月”、“六月”、“七月”、“八月”、“九月”、“十月”、“十一月”、“十二月”],
子午线:[“上午”、“下午”]
};


我已经准备好将i18n用于网站国际化的翻译部分。因此,如果不需要额外的时间库,那就太好了。

我最终解决了一个简化问题,即使用I18n.l单独的把手日期在12小时和24小时之间进行选择。然后我指定了该格式,以便在translations.js中以这种方式格式化日期对象

对于英语区域设置等,我使用12小时时钟

time: {
    formats: {
        short: '%-I:%M %p', // hh:mm tt
    },
}
time: {
    formats: {
         short: '%-H:%M', // hh:mm
    }
}
挪威语、瑞典语等。我使用24小时制

time: {
    formats: {
        short: '%-I:%M %p', // hh:mm tt
    },
}
time: {
    formats: {
         short: '%-H:%M', // hh:mm
    }
}
对于具有不同分隔符和子午线的语言,以及工作日等的名称。您还必须指定这些,并且不要使用i18n.js文件中给定的默认日期对象

标准i18n js中可接受的格式为:

  • %a-缩写的工作日名称(Sun)
  • %A-完整的工作日名称 (星期日)%b-缩写月份名称(一月)
  • %B-完整的月份名称(一月)
  • %c-首选的本地日期和时间表示形式
  • %d-月日(01..31)%-d-月日(1..31)
  • %小时-一天中的一小时,24小时制(00..23)
  • %-小时-一天中的小时数,24小时制(0..23)
  • %一天中的一小时,12小时时钟(01..12)
  • %-一天中的一小时,12小时的时钟(1..12)
  • %m-一年中的月份(01..12)
  • %-m-一年中的月份(1..12)
  • %M-每小时分钟数(00..59)
  • %-M—每小时的分钟数(0..59)
  • %p-子午线指示器(上午或下午)
  • %秒-秒(00..60)
  • %-秒-分钟的秒数(0..60)
  • %w-一周中的某一天(星期日为0,0..6)
  • %y-无世纪年(00..99)
  • %-y-无世纪年(0..99)
  • %年与世纪
  • %z-时区偏移(+0545)

如果您正在使用,它看起来不是,您应该提交一份PR。我目前正在使用github.com/fnando/i18n-js上的i18n.js-script,并且已经添加了助手来自己制作车把。我已经开始创建一个jsbin,但必须运行,因为您添加了i18n标记,所以我将它放在这里作为历史记录。“转换12/24小时时钟”是什么意思?是否只想根据区域设置显示时间?这是时间格式,不需要转换任何内容。还是要解析用户输入?我只是指时间格式。所以无论你是在晚上20:42还是8:42。我只是想知道这是否是i18njs可以做到的,但我想你必须自己配置它,就像你对常规翻译所做的那样。