AnyChart Treemap drillChange текущее событие не синхронизировано с getDrilldownPath - PullRequest
0 голосов
/ 03 января 2019

В Anychart 8.3+ я использую прослушиватель TreeMap chart.listen('drillChange') для получения информации о выбранном элементе.

Примечание. Мне нужно было использовать e.current.get('name'), как показано в в примере , вместо e.currentTarget в соответствии с древовидной картой listen() документации. Однако значение getDrillDownPath() кажется одним щелчком по событию позади. Почему это?

chart.listen("drillChange", function(e){
  // get the drilldown path and convert it to a string
  var text = printPath(chart.getDrilldownPath());

  // set the chart title
  chart.title().useHtml(true);
  chart.title("Treemap: Interactivity (Drillchange)" +
    "<br><br>currentTarget: " + e.currentTarget + 
    "<br><br>current.get('name'): " + e.current.get('name') + 
    "<br><br>Path: " + text
});

Ниже приведена ссылка на пример кода, показывающий неопределенное значение e.currentTarget, определенное значение e.current.get('name') и значение пути детализации на один шаг позади.

https://playground.anychart.com/AeI6bUhK/7

Заранее спасибо!

1 Ответ

0 голосов
/ 09 января 2019

e.currentTarget - это поле по умолчанию, которое в некоторых контекстах может быть неопределенным.Функция getDrillDownPath() возвращает путь к текущему уровню.Текущий уровень вы можете получить от e.current.get('name').Итак, для вашей цели полный путь вы можете получить так:

  chart.title("Treemap: Interactivity (Drillchange)" +
    "<br><br>Path: " + text + "\\" + e.current.get('name')
  );
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...