首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用bower从AngularJS I18n文件中包含特定的区域设置?

如何使用bower从AngularJS I18n文件中包含特定的区域设置?
EN

Stack Overflow用户
提问于 2016-04-04 16:48:47
回答 3查看 2K关注 0票数 3

我已经使用bower install angular-i18n下载了angular I18n代码库,它会将其放入我的bower_compontents中,并使用angular-i18n : 1.5.3更新bower.json文件,这是预期的行为。

我想包含一个特定的区域设置(例如de-de.js),以便每次我运行grunt serve时,它都会与其他的angular脚本一起包含在一起,而这目前还没有发生。有什么想法可以实现这一点吗?

谢谢。

EN

回答 3

Stack Overflow用户

发布于 2016-06-24 21:20:52

在我的示例中,我使用文件angular-locale_es.js的原始版本的链接在我的bower文件中添加了所需的特定版本。bower.json

代码语言:javascript
复制
"dependencies": {
    "angular": "^1.5.0",
    "angular-mocks": "^1.5.0",
    ...
    "angular-locale_es": "https://raw.githubusercontent.com/angular/bower-angular-i18n/master/angular-locale_es.js",
     ...
  }
票数 1
EN

Stack Overflow用户

发布于 2017-06-14 21:50:16

在bower.json中,您可以添加覆盖部分并指定要包含的i18n脚本。

代码语言:javascript
复制
{
  "name": "your application",
  "version": "1.1.2",
  "dependencies": {
    "angular": "#1.5.7",
    "angular-i18n": "#1.5.7",
	"moment": "#2.13.0",
  },
  "overrides": {
    "angular-i18n":{
      "main":[
        "angular-locale_de-ch.js"
      ]

    },
    "moment": {
      "main": [
        "moment.js",
        "locale/de.js"
      ]
    },
  }
}

票数 1
EN

Stack Overflow用户

发布于 2016-06-22 16:40:28

因此,为了回答我自己的问题,如果您只需要其中一种语言环境,您可以将de-de.js语言环境的内容复制并替换到主angular-i18n文件中,这样做没有任何麻烦,也不需要复杂的方法。

但是,如果您有多个语言环境并希望根据某个条件进行决策,则可以使用此库设置缺省语言环境

https://github.com/lgalfaso/angular-dynamic-locale/

之后,您所要做的就是为您的语言环境文件添加一个基本位置(例如,我使用的是CDN ):tmhDynamicLocaleProvider.localeLocationPattern('https://cdnjs.cloudflare.com/ajax/libs/angular-i18n/1.5.5/angular-locale_{{locale}}.js');

检查您的条件并将区域设置作为$translate.use('de');传递

希望这能有所帮助!

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

https://stackoverflow.com/questions/36398134

复制
相关文章

相似问题

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