目前我正在使用angular translate创建自己的指令。作为图像的工具提示,我正在使用一些翻译。当我切换语言时,翻译文本保持不变,应该更改。我认为,该指令使用当前的转换值编译了一次,但我不知道如何在我切换语言时更新它(某种重新编译)。
在我的指令代码下面。
'use strict';
angular.module('HomeModule')
.directive("headerName", ["tabService", "imageService", "$translate", "$filter", function(tabService, imageService, $translate, $filter){
var directive = {};
directive.restrict = 'E';
directive.template = '<div class="vcenter"><img ng-src="' + imageService.getImageByKey('arrowLeftSrc') + '" height="20px" tooltip-class="custom-tooltip" tooltip="' + $filter('translate')('RETURN') + '" tooltip-placement="bottom" tooltip-popup-delay="500" class="return-arrow"/></div>' +
'<div class="vcenter"><i class="fa fa-angle-down fa-2x"/></div>';
directive.scope = {}
return directive;
}]);
答案 0 :(得分:0)
简而言之,解决方案是:translate-attr-tooltip="RETURN"
。
请勿在指令模板中使用$filter
,而应使用angular-translate指令translate-attr-*
(https://angular-translate.github.io/docs/#/api/pascalprecht.translate.directive:translate)。
这是一个可以玩的JSFiddle - http://jsfiddle.net/ku326j6p/2/