Page 394 - AngularJS权威教程
P. 394

374  第 27 章  本地化


                 至此我们已经介绍了如何使用anguar-translate的$translateProvider.translations()
             方法和translate过滤器为Angular应用提供i18n支持。此外还展示了如何使用$translate服务以
             及它的use()方法在运行时改变语言。

                 你可以尝试一下angular-translate。它提供了很多非常棒的特性,比如处理多元化,使用
                                                                           ①
             自定义加载器和通过服务设置翻译。它的文档非常出色,建议你在这里 查看它们。
                 那里还有很多可以直接用于你的站点的示例。同时它还是一个展示了所有可用组件和接口的
             API参考手册 ,这些都可以用于构建了不起的带有国际化支持的应用。
                        ②

             27.7  angular-gettext


                 类似于angular-translate,angular-gettext使用一个完不同方法提供了翻译功能。但它
             不需要我们将想要翻译的字符串嵌入到应用中,而是抽象出特定的字符串让程序库处理它们。

                 Gettext是一个由GNU项目发起的国际化和本地化系统,该项目最早发布于1995年。它是一
             个非常流行的支持新语言的系统,因为它可将字符串打包,以便稍后翻译。

                 angular-gettext库以同样的方式工作,它将稍后想要翻译的字符串包装起来。

             27.8 安装


                 为了使用angular-gettext,首先需要加载anglar-gettext库。虽然可以使用几种不同的方
             式安装它,但是我们推荐使用Bower。
                  使用Bower

                 可以像这样使用Bower安装angular-gettext:

                 $ bower install --save angular-gettext
                     此外,你也可以从Github下载压缩版的angular-gettext。

                 安装了最新的稳定版的angular-gettext之后,就可以简单的将它嵌入到HTML文档中。只
             需要确保在Angular之后嵌入,因为它依赖于核心的angular库以及jquery(因为它也是
             angular-gettext的依赖项)。
                 <script src="path/to/jquery.js"></script>
                 <script src="path/to/angular.js"></script>
                 <script src="path/to/angular-gettext.js"></script>
                 最后一项要点是,在你的应用中必须将angular-gettext声明为一个加载依赖:

                 var app = module('myApp', ['angular-gettext']);
                 现在就已准备好使用angular-gettext的组件来翻译你的应用了。



             ——————————
                ① http://pascalprecht.github.io/angular-translate
                ② http://pascalprecht.github.io/angular-translate/#/api
   389   390   391   392   393   394   395   396   397   398   399