so habe ich ein interessantes Problem.Wie Highcharts Tooltip Formatierung Funktion von außerhalb der Config-Objekt aufrufen?
Hier ist, wo die Forma Funktion innerhalb des Diagramms Config Objekts ist:
In HighCharts-Controller
vm.config = {
options: {
....
chart: {
....
},
navigator: {
....
},
tooltip: {
shared: true,
useHTML: true,
backgroundColor: null,
borderWidth: 0,
shadow: false,
formatter: function(tooltipObj) {
return formatTooltip(tooltipObj, this.points);
}
},
....
Ich würde gerne in der Lage sein, die formatTooltip
Funktion von einem anderen Ort zu rufen in meinem App Wie auch immer, 1) Wie mache ich das? und 2) Wie gebe ich die tooltipObj
weiter?
Zum Beispiel Innenseite meiner alertFactory mag ich das Mouseover-Ereignis, das passiert, wenn der Benutzer eine plotBand schwebt über, mehr Informationen in die Tooltip senden:
In AlertsFactory
var formatPlotBand = _.curry((color, alert) => {
return {
color : color,
from : alert.start_epoch * 1000,
to : alert.end_epoch * 1000,
id :'alert-plotband',
events: {
mouseover: function (e) {
/*
Somehow from here call the formatTooltip function
in the highCharts Controller.
*/
},
mouseout: function (e) {
....
Können Sie zeigen, wie 'formatTooltip()' Methode aussieht? Gibt diese Methode nur einen neuen Wert für einen Formatierer zurück? Oder tut es auch etwas anderes? Im ersten Fall erhalten Sie nur eine Zeichenfolge und sonst nichts: Sie aktualisiert den Tooltip nicht (da der Formatierer nicht aufgerufen wird). Ich denke 'chart.tooltip.refresh ([Punkt, Punkt, Punkt]);' (nicht Teil der API) ist ein Weg zu gehen, aber es hängt davon ab, was Sie erreichen wollen. –