获取Highcharts工具提示以返回角度指令?
我们正在尝试为Highcharts图创建一些复杂的工具提示,它将显示应用程序中的一些动态数据,但不会显示在图表中,所以我认为最好的办法是为所有格式创建一个角度指令等等,然后启用highcharts的useHTML:true属性以及自定义格式化程序函数。 $ compile()不会抛出错误..
但是,当此代码运行时,工具提示只显示Object.object作为文本,而不是指令模板的内容。 我错过了什么,或者这是不可能的? 以下是我们正在尝试的一个例子……
tooltip: { useHTML: true, formatter: function () { return $compile("</")($scope); } }
我想知道是否需要“附加”到某些DOM元素才能工作,但如果是这样,我不确定该工具提示的命名元素是什么?
你给格式化程序一个dom元素,它想要一个html字符串。 将其转换回html可行,但它似乎是实现目标的低效方式。
http://jsfiddle.net/ue3x49tt/3/
formatter: function () { return $compile(" ")($scope).html(); }
我遇到了麻烦,我不能给指令一个参数。 http://jsfiddle.net/tux82Lvw/
return $compile(" "
顺便说一句,指令范围是可以的,唯一的麻烦是模板编译
//datacompliance angular.module('myapp').directive('pmErrorRateTooltip', function() { return { scope:{test:'='}, link:function($scope){ console.log($scope) }, restrict: 'E', template: '{{test}}' }; });
我能够使用参数来实现这一点。 我从他们的答案中分出了user2422856 jsfiddle,以显示http://jsfiddle.net/xhfgzfps/1/ 。
我必须编译该指令,然后执行$ scope。$ digest()并最终使用.html()返回标记。 如果不手动触发摘要,我无法弄清楚如何做到这一点。
$scope.test = "Dont work" var toolTip = $compile(" ")($scope); $scope.$digest(); return toolTip.html();