|
室内地图绑定了楼层切换的事件- //切换楼层
- myIndoormap.on("floorchanged",floorchange);
复制代码 在这个事件里有两个方法- function floorchange(){
- clearMarker(); //清除地图上marker
- showMarker();//显示当前楼层的marker
- }
复制代码
这里的showMarker里面有循环,显示当前楼层的marker但是现在测试,所以只是循环后打印出一些数据。在控制台我设置了断点查看,当showMarker()里的for循环走完,就执行indoormap-1.0.js里面的方法,具体也看不懂,然后完了就又再次执行showMarker,这样执行了好几遍,导致我打印的数据都是重复的,而且我发现scada.scadaConfig[floorNum]里面的元素越多,反复执行的次数就越多,这是为什么?
- function showMarker(){
- var floorNum = myIndoormap.getFloor();
- if(scada.scadaConfig[floorNum]){
- for(var i=0;i<scada.scadaConfig[floorNum].length;i++){
- var location=scada.scadaConfig[floorNum][i].location;
- var dataIcon=scada.scadaConfig[floorNum][i].icon;
- var dataName=scada.scadaConfig[floorNum][i].dataName;
- var deviceName=scada.scadaConfig[floorNum][i].deviceName;
- var dataId=scada.scadaConfig[floorNum][i].dataId;
- var titleContent=deviceName+"-->"+dataName;
- console.info(scada);
- console.info(location);
- console.info(dataIcon);
- console.info(titleContent);
- }
- }
- }
复制代码
|
|