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

Angular-translate: translate different portions of the page with different languages

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

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

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

现在我有以下要求:我需要用 "main language" 本地化所有应用程序,假设是英语,但我需要将应用程序的一小部分本地化为其他语言(法语)。

两种语言必须co-exists,比如申请header是英文,但是页面内容是法文,请看附图:

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

实现此目的的一种方法是制作您自己的翻译过滤器,它将包装 angular 翻译。

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' |我的翻译:'de'}}

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