内联html UI Bootsrap工具提示中的角度表达式

时间:2016-08-04 20:13:12

标签: angular-ui-bootstrap

我无法弄清楚在uib-tooltip-html中渲染角度表达式的正确方法。文档中使用的示例:<a href="#" uib-tooltip-html="'static. {{dynamicTooltipText}}. <b>bold.</b>'">inline string</a> 在IE,Chrome或Firefox中不适用于我。谁能指出我正确的方向?感谢。

1 个答案:

答案 0 :(得分:1)

以下是文档的摘录

  

uib-popover-html - 获取一个计算结果为HTML字符串的表达式。请注意,此HTML未编译。如果需要编译,请改用uib-popover-template属性选项。用户有责任确保将内容安全放入DOM中!

有趣的部分是

  

用户有责任确保将内容安全放入DOM中!

这基本上意味着您应该使用$sce服务来清理HTML并将其作为控制器中的表达式传递

$scope.dynamicTooltipText = "MY SUPER DYNAMIC TEXT"

$scope.htmlPopover = $sce.trustAsHtml('static. ' + $scope.dynamicTooltipText + ' . <b>bold.</b>');

然后将$htmlPopover传递给您的uib-popover-html指令

<button uib-popover-html="htmlPopover" popover-placement="bottom" class="btn btn-default">
    HTML Popover
</button>

Demo plunker