Angular Translate - 翻译翻译值attr

时间:2016-04-11 17:24:56

标签: javascript angularjs angular-translate

我在尝试使用角度平移时遇到问题,其中一些翻译值是动态的,需要先翻译。

这是一个更好地解释问题的plunker:PLUNKER

<p translate="PARAGRAPH" translate-values="{username: ('userNameTranslate' | translate)}"></p>

1 个答案:

答案 0 :(得分:0)

只需在父翻译中添加html属性

即可
  PARAGRAPH: 'Hello <strong>{{username}}</strong> love!',
  userNameTranslate : 'User Name'

然后它按预期工作。

您必须仅使用translate参数添加动态内容。 例如:

javascript文件

var translations = {
  PARAGRAPH: 'Hello <strong>{{username}}</strong> and then some {{additionaldata}} love!',
};

var app = angular.module('myApp', ['ngSanitize', 'pascalprecht.translate']);

app.config(['$translateProvider', function ($translateProvider) {
  $translateProvider.translations('en', translations);
  $translateProvider.preferredLanguage('en');
  // Enable escaping of HTML
  $translateProvider.useSanitizeValueStrategy('escaped');
}]);

app.controller('Ctrl', ['$scope', '$translate', '$sce', function ($scope, $translate, $sce) {
  $scope.myUserName = 'my personal name';
  $scope.myAdditionalData = 'hello World';
}]);

并在html文件中

<div ng-controller="Ctrl">
  <p translate="PARAGRAPH" translate-values="{username:myUserName, additionaldata: myAdditionalData}"></p>
 </div>