Angular-translate:使用不同语言翻译页面的不同部分

时间:2016-05-09 16:19:00

标签: angularjs localization angular-translate

我正在使用AngularJS 1.4.x编写Web应用程序,我使用“angular-translate”作为本地化库。

该应用程序支持2种语言:英语和法语。

用户可以在这两种语言之间切换,应用程序也可以进行本地化。

现在我有以下请求:我需要使用“主要语言”本地化所有应用程序,让我们说英语,但我需要使用其他语言(法语)本地化应用程序的一小部分。

这两种语言必须共存,例如应用程序的标题是英文,但页面内容是法文,请参阅附图:

enter image description here

我该怎么做?这个库可以吗?

1 个答案:

答案 0 :(得分:2)

这样做的一种方法是制作自己的翻译过滤器,它将包装角度翻译。

app.filter('mytranslation', ['$translate', '$filter', function($translate, $filter) {
 return function(input, lang) {
  input = input || '';
  var currentLanguage = $translate.use();
  $translate.use(lang);
  var result = $filter("translate")(input);
  $translate.use(currentLanguage);
  return result;

} }])

然后在html页面中,您可以将其用作:

 <p>German section</p>

{{'HELLO'| mytranslation: '去'}}

以下是一个工作示例:https://plnkr.co/edit/pYFo3Wapz12Q6686zrqn?p=preview