Angularjs 1.5.x本地化最佳实践

时间:2016-05-17 06:32:37

标签: javascript html angularjs

Here

  

对于较新版本的框架(> = 1.4.0),请使用内置的i18n   工具,当使用旧版本(< 1.4.0)时,使用angular-translate。

In documentation本地化有很多步骤

我找到了

a)angular-localize

b)angular-localization

但他们有小星星。

有哪些本地化的最佳实践?

我认为简单的方法是

  1. 使用属性" lcz"在html
  2. 的index.html

    <div lcz>Hi <span>{model.Name}</span></div>
    <div lcz>Hello <span>{model.Name}</span></div>
    
    1. 使用gulp解析所有htmls并生成本地化资源(与之前生成的合并)
    2. {
        "global": 
        {
         "Hi ": 
         {
          "en": "Global Hi en ",
          "ru": "Global Hi ru ",
         }
         "Hello ":
         {
          "en": "Global Hello en ",
          "ru": "Global Hello ru ",
         }
        }
        "index.html":
        {
         {
          "en": "Local Hi en ",
          "ru": "Local Hi ru ",
         }
         "Hello ":
         {
          "en": "",
          "ru": "",
         }
        }
      }
      
      1. 运行构建本地化的htmls index.html&gt; index.en.html index.html&gt; index.ru.html 其中文本将被本地化资源替换
      2. 第一个div使用&#34; Local Hi en&#34;

        第二个div使用&#34; Global Hello en&#34;

        有类似的图书馆吗?

1 个答案:

答案 0 :(得分:0)

从它的外观来看,如果你的意思是语言翻译,可以通过本地化。在这种情况下,最好的选择是angular-translate

您可以在应用程序配置中指定语言,或将其加载为.json

要指定需要翻译的内容,请添加| translate过滤器,例如

<h2>{{ 'hello' | translate }}</h2>

或使用translate指令:

<h2 translate="hello"></h2>

嗯,它比这更深刻,它支持动态语言切换之类的东西,并且几乎没有扩展,例如localStorage,用于记住用户语言偏好的cookie,并且具有相当好的支持(和星星