我正在用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?
答案 0 :(得分:0)
一个人可以使用$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>
然后可以使用标准的调试技术来诊断问题。