Ошибка ng-bind-html для выражений составных переменных - PullRequest
0 голосов
/ 13 апреля 2019

Я пишу угловой интерфейс с Typescript.Мне нужно связать HTML для правильного рендеринга.Для этой цели я использую ng-bind-html.

Он отлично работает с простыми переменными, такими как

 <span ng-bind-html='property'></span>

В приложении отображается правильный текст.

Но теперь яимеют очень сложную переменную

{{notification.getTranslationKey() | translationNamespace:parentctl.getTranslationNamespace() | translate}}

Я пробовал разные способы использования ng-bind-html с этим выражением, но оно не работает.Вместо текста я получаю только пустое место.

Как использовать ng-bind-html с такими сложными выражениями?Есть ли альтернативы этому подходу?Может быть, можно связать html в контроллере вместо html?

1 Ответ

0 голосов
/ 13 апреля 2019

Для доступа к фильтрам в контроллере можно использовать $ filter service :

$scope.myFunc = function() {
     var p1 = $scope.notification.getTranslationKey();
     var arg1 = $scope.parentctl.getTranslationNamespace();
     var p2 = $filter("translationNamespace", p1, arg1);
     var p3 = $filter("translate", p2);
     console.log(p3)
     return p3;
});

Использование

<span ng-bind-html='myFunc()'></span>

Затем можно использовать стандартные методы отладки длядиагностировать проблемы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...