amcharts 地图:点击时动态更改工具提示

amcharts map : Changing tooltip dynamicly on hit

我正在使用 amcharts4,我想在点击事件时动态更改工具提示值; 我试过了:

let chart = am4core.create("chartdiv", am4maps.MapChart);
chart.projection = new am4maps.projections.Miller();
let worldSeries = chart.series.push(new am4maps.MapPolygonSeries());
... some code
let worldPolygon = worldSeries.mapPolygons.template;
worldPolygon.tooltipText = '{name}';
worldPolygon.events.on("hit", async function(ev) {
  let destination_actif = await context.$get_destination_actif_by_country_code(code) // api request on hit a country polygon
// condition to check if there is result
  if(!destination_actif.data){
     worldPolygon.tooltipText = 'No result';
  }else{
     worldPolygon.tooltipText = 'With result';
  }
}

请求 api 命中后,我想根据结果条件更改工具提示值,但是在这里,当我 console.log 工具提示时,值发生了变化,但是悬停在多边形上"{name}"

上的值仍然相同

所以我发现了问题所在,在我之前的代码中我试图更改整个工具提示,但这是错误的方式;我只需要更改目标工具提示,所以我这样做了:

worldPolygon.events.on("hit", async function(ev) {
  let destination_actif = await context.$get_destination_actif_by_country_code(code) 
  let target = ev.target
  if(!destination_actif.data){
     target.tooltipText = 'No result';
  }else{
     target.tooltipText = 'With result';
  }