Как проверить, есть ли в строке переведенное значение? Я использую AngularJS и AngularTranslate.
Я хочу отображать значение только в том случае, если оно было переведено. Angular Translate покажет непереведенную строку, если перевод недоступен.
Я начал делать это:
<div ng-if="question.text | translate != question.text">{{ question.text | translate }}</div>
Но это не работает, так как сравнение происходит до того, как фильтр перевода выполнил свою работу. (По крайней мере, я думаю, что это то, что происходит).
В итоге я сделал следующее:
.filter('isTranslated', function(){
return function(translatedVal, originalVal){
return (translatedVal === originalVal) ? false : true;
}
})
<div ng-if="question.text | translate | isTranslated:question.text">{{ question.text | translate }}</div>
Это отлично работает, но мне интересно, есть ли лучший способ сделать это?