使用角度平移的多重化的AngularJS平移
您好我需要根据值进行复数翻译,但无法找到如何做到这一点.
例如,我有变量peopleCount. > peopleCount = 1翻译应该是:english:{{peopleCount}}此人喜欢这个立陶宛语:{{peopleCount}} zmogus tai megsta 但对于立陶宛语翻译: >如果peopleCount介于2和9之间,或任何以这些数字结尾的数字,除了以第4个规则中提供的数字结尾的数字(例如:225,249,210< ---这些是正确的数字.并且不正确的数字:215,250 ...).它将是{{peopleCount}} zmones tai megsta 我该如何做到这一点? 解决方法
Angular-translate具有MessageFormat功能的服务,它非常强大,并且还具有立陶宛语的内置语言环境.
Article about MessageFormat and angular-translate.
安装 您可以通过bower安装此软件包: $bower install angular-translate-interpolation-messageformat 之后,按顺序包含MessageFormat和angular-translate-interpolation-messageformat的必要脚本: <script src="path/to/messageformat.js"></script> <script src="path/to/angular-translate-interpolation-messageformat.js"></script> 最后在你的config函数中调用$translateProvider中的useMessageFormatInterpolation函数: $translateProvider.useMessageFormatInterpolation(); 用法 将angular-translate-interpolation-messageformat安装到您的应用程序后,您可以使用它. 例如,您可以为代码“PEOPLE”创建英语本地化,如下所示: { "PEOPLE" : "{peopleCount,plural,one {There is one man (in lithuanian)} few {# zmones tai megsta} other {# zmoniu tai megsta}}" } 而不是像你这样在你的HTML中使用它: <span translate="PEOPLE" translate-values="{peopleCount: 12}" translate-interpolation="messageformat"></span> 输出将是:“12 zmones tai megsta”. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |