【问题标题】:ERANAMES and ERAS in angular-locale角度语言环境中的 ERANAMES 和 ERAS
【发布时间】:2016-01-17 15:46:03
【问题描述】:

我已经更新了 ASP.NET 4.5 Angular 项目中的 Nuget 包: ui-bootstrap-tpls.js 从版本 0.14.3 - 2015-10-23(更新于 2015-12-01)更改为 1.0.3 - 2016-01-11;自 2015-12-01 以来,Angular 为 1.4.8。

使用新的 ui-bootstrap-tpls.js 在输入文本上使用 uib-datepicker-popup 属性时,我遇到了“未定义的连接”js 错误;经过一些调试,我发现问题出在第 688 行,formatCodeToRegex 变量的分配。

在这个地方管理格式化的“G”字符(在 2015 年 10 月版本中未完成),其中 $locale.DATETIME_FORMATS 是一个有效对象,但未定义 $locale.DATETIME_FORMATS.ERANAMES 和 $locale.DATETIME_FORMATS .ERAS,所以 $locale.DATETIME_FORMATS.ERANAMES.join 失败。

我不使用“G”作为日期格式,所以在 Google 上进行了一些搜索后,我通过评论失败的部分解决了这个问题......:

.....
{
  key: 'ww',
  regex: '[0-4][0-9]|5[0-3]'
},
{
  key: 'w',
  regex: '[0-9]|[1-4][0-9]|5[0-3]'
}//,
//{
//  key: 'GGGG',
//  regex: $locale.DATETIME_FORMATS.ERANAMES.join('|').replace(/\s/g, '\\s')
//},
//{
//  key: 'GGG',
//  regex: $locale.DATETIME_FORMATS.ERAS.join('|')
//},
//{
//  key: 'GG',
//  regex: $locale.DATETIME_FORMATS.ERAS.join('|')
//},
//{
//  key: 'G',
//  regex: $locale.DATETIME_FORMATS.ERAS.join('|')
//}

但显然不是最好的解决方案。 我搜索了很多,但我不明白 DATETIME_FORMATS.ERANAMES 和 ERA 未定义是如何工作的。

在本地化文件中,例如 http://code.angularjs.org/1.4.8/i18n/angular-locale_en-us.js 声明了这些值,我在脚本标签中调用了以前的 angular locale js。

【问题讨论】:

    标签: javascript angularjs twitter-bootstrap


    【解决方案1】:

    升级到 Angular 1.4.9 后我也遇到了同样的问题。我需要升级 Angular Locale (https://code.angularjs.org/1.4.8/i18n/angular-locale_es-es.js) 并且错误已解决。

    【讨论】:

    • 我尝试从 Nuget 安装 Angular 语言环境,但仍然存在错误。 Angular 语言环境安装了很多代码,但理论上我应该只有
    • 嗨@RobertoAlessi。我在导入 angularjs 库后导入了它:
    猜你喜欢
    • 2018-03-07
    • 1970-01-01
    • 1970-01-01
    • 2019-08-10
    • 2019-06-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多