点地图轮播并联动

需要点地图轮播和联动,但是报表块就是没有吧参数传递过去,按照这个案例做的。

https://help.fanruan.com/finereport/doc-view-2554.html

setTimeout(function() {

//console.log(area);

var autoTooltipDelay = 3; // 默认3s播放一个提示.

// 第一步, 拿图表实例.

var vanchart = FR.Chart.WebUtils.getChart('chart0').getChartWithIndex(0);

// 第二步, 筛选出区域名称满足的所有的系列的点, 用于传递给自动数据提示接口.

var points = vanchart.series.reduce(function(points, ser) {

return points.concat(ser.points);

}, []).filter(function(point) {

return area; //&& area.indexOf(point.name) >= 0;

});

//console.log(points);

// 第三步, 保存旧的显示提示方法

var oldChartShowTooltip = vanchart.showTooltip;

// 第四步, 重写新的提示方法, 在提示的同时触发联动.

vanchart.showTooltip = function(point) {

oldChartShowTooltip.apply(vanchart, Array.prototype.slice.call(arguments));

var areaName = point.name;

changeParameter(areaName);

//console.log(areaName);

}

// 第五步, 使用轮播提示接口触发轮播数据提示

vanchart.openAutoTooltip(autoTooltipDelay * 1000, points);

// 修改参数, 联动其他图表或者组件.

function changeParameter(areaName) {

_g().getWidgetByName('report1').gotoPage(1,"{}",true);

     _g().getWidgetByName('report2').gotoPage(1,"{}",true);

     _g().getWidgetByName('report3').gotoPage(1,"{}",true);

}

}, 2000);

这里面我放了参数也还是不行

_g().getWidgetByName('report3').gotoPage(1,{area:areaName},true);

FineReport Will 发布于 2023-5-10 12:29
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
snrtuemcLv8专家互助
发布于2023-5-10 13:42

报表块传递参数写法错误

这样写

_g().getWidgetByName("report3").gotoPage(1, "{area:" + areaName+ "}", true);

  • Will Will(提问者) 谢谢 就是这儿的问题 已解决
    2023-05-11 00:05 
最佳回答
0
CD20160914Lv8专家互助
发布于2023-5-10 13:18

你下载它的文档看是可以的。你的不行。就是你复制的代码或者修改的代码哪里有问题 了

你的代码和文档的差异有点大。你直接在他们的上面修改测试看。

  • 2关注人数
  • 572浏览人数
  • 最后回答于:2023-5-10 13:42
    请选择关闭问题的原因
    确定 取消
    返回顶部