Commit 120978774526e452d7adc75a35af20199df6c708

Authored by wangfan
1 parent 2ae0bf4b

地图优化

@@ -14,6 +14,7 @@ const renNum=function(){ @@ -14,6 +14,7 @@ const renNum=function(){
14 return arr; 14 return arr;
15 } 15 }
16 const cates_version='?1.1'; 16 const cates_version='?1.1';
  17 +const hasSellerConcat=true;//变量存储所有商户
17 Page({ 18 Page({
18 19
19 /** 20 /**
@@ -28,7 +29,7 @@ Page({ @@ -28,7 +29,7 @@ Page({
28 }, 29 },
29 markers: [], 30 markers: [],
30 //polygons:{}, 31 //polygons:{},
31 - sellers:[], 32 + //sellers:[],
32 multiArray: [['不确定'], ['全部菜系']], 33 multiArray: [['不确定'], ['全部菜系']],
33 multiIndex: [0, 0], 34 multiIndex: [0, 0],
34 //scrollIntoView:'', 35 //scrollIntoView:'',
@@ -269,6 +270,7 @@ Page({ @@ -269,6 +270,7 @@ Page({
269 let markers=this.data.markers; 270 let markers=this.data.markers;
270 console.log('markertap',e) 271 console.log('markertap',e)
271 let bl=1.2; 272 let bl=1.2;
  273 + let current=0,hasCurrent=true;
272 markers.forEach((m,i)=>{ 274 markers.forEach((m,i)=>{
273 m.iconPath=m.iconPath.replace('/cates-active/','/cates/') 275 m.iconPath=m.iconPath.replace('/cates-active/','/cates/')
274 m.zIndex=m.zIndexBak 276 m.zIndex=m.zIndexBak
@@ -298,22 +300,19 @@ Page({ @@ -298,22 +300,19 @@ Page({
298 m.callout.borderColor= '#F05522'; 300 m.callout.borderColor= '#F05522';
299 m.callout.bgColor= '#F05522'; 301 m.callout.bgColor= '#F05522';
300 } 302 }
  303 + hasCurrent=false
  304 + }
  305 + if(m.display!='none' && hasCurrent){
  306 + current++
301 } 307 }
302 }) 308 })
303 let obj={ 309 let obj={
304 markers:markers, 310 markers:markers,
305 }; 311 };
  312 + console.log('markertap::current,',current);
306 if(flag){ 313 if(flag){
307 - let current=0;  
308 //obj.scrollIntoView='seller-'+e.markerId; 314 //obj.scrollIntoView='seller-'+e.markerId;
309 - this.sellers.forEach(se=>{  
310 - if(se.id==e.markerId){  
311 - obj.current=current;  
312 - return true;  
313 - }else if(se.display!='none'){  
314 - current++;  
315 - }  
316 - }) 315 + obj.current=current;
317 this.hasMarkertap=true; 316 this.hasMarkertap=true;
318 } 317 }
319 this.setData(obj) 318 this.setData(obj)
@@ -355,7 +354,6 @@ Page({ @@ -355,7 +354,6 @@ Page({
355 },300) 354 },300)
356 } 355 }
357 let markers = []; 356 let markers = [];
358 - let sellers=this.data.sellers;  
359 let param={ 357 let param={
360 lat: this.user.latitude, 358 lat: this.user.latitude,
361 lng: this.user.longitude, 359 lng: this.user.longitude,
@@ -386,9 +384,10 @@ Page({ @@ -386,9 +384,10 @@ Page({
386 }else{ 384 }else{
387 seller.distance+='米'; 385 seller.distance+='米';
388 } 386 }
389 - this.sellersIds.push(seller.id); 387 + if(hasSellerConcat){
  388 + this.sellersIds.push(seller.id);
  389 + }
390 hasMark=true; 390 hasMark=true;
391 - sellers.push(seller);  
392 } 391 }
393 if(hasMark){ 392 if(hasMark){
394 let marker={ 393 let marker={
@@ -401,6 +400,7 @@ Page({ @@ -401,6 +400,7 @@ Page({
401 //title:seller.seller_name, 400 //title:seller.seller_name,
402 zIndex:sellersLength-si, 401 zIndex:sellersLength-si,
403 zIndexBak:sellersLength-si, 402 zIndexBak:sellersLength-si,
  403 + seller:seller,
404 }; 404 };
405 if(seller.mode.length>0){ 405 if(seller.mode.length>0){
406 seller.mode.forEach(x=>{ 406 seller.mode.forEach(x=>{
@@ -439,23 +439,21 @@ Page({ @@ -439,23 +439,21 @@ Page({
439 console.log('接口报错了'); 439 console.log('接口报错了');
440 } 440 }
441 this.sellersNow=now_sid; 441 this.sellersNow=now_sid;
442 - sellers.forEach(se=>{  
443 - se.display='none'  
444 - if(now_sid._indexOf(se.id)>-1){  
445 - se.display='';  
446 - }  
447 - })  
448 - this.sellers = sellers;  
449 - let obj={  
450 - sellers:sellers,  
451 - } 442 + let obj={}
452 if(markers.length>0){ 443 if(markers.length>0){
453 - obj.markers=this.data.markers.concat(markers);  
454 - }  
455 - if(sellers.length<this.data.current){  
456 - obj.current=0 444 + if(hasSellerConcat){
  445 + obj.markers=this.data.markers.concat(markers);
  446 + }else{
  447 + obj.markers=markers;
  448 + }
  449 + obj.markers.forEach(mk=>{
  450 + //mk.display='none';
  451 + if(now_sid._indexOf(mk.id)>-1){
  452 + mk.display='';
  453 + }
  454 + })
  455 + this.setData(obj)
457 } 456 }
458 - this.setData(obj)  
459 }) 457 })
460 458
461 }, 459 },
@@ -523,9 +521,12 @@ Page({ @@ -523,9 +521,12 @@ Page({
523 return; 521 return;
524 } 522 }
525 let i=e.detail.current 523 let i=e.detail.current
526 - this.activeSellerID=this.sellersNow[i]; 524 + // this.activeSellerID=this.sellersNow[i];
  525 + // this.markertap({
  526 + // markerId:this.activeSellerID
  527 + // },false)
527 this.markertap({ 528 this.markertap({
528 - markerId:this.activeSellerID 529 + markerId:this.data.markers[i].id
529 },false) 530 },false)
530 }, 531 },
531 gotoDetail(e){ 532 gotoDetail(e){
@@ -50,10 +50,10 @@ @@ -50,10 +50,10 @@
50 interval="2000" duration="500" 50 interval="2000" duration="500"
51 previous-margin="{{20}}px" next-margin="{{20}}px" 51 previous-margin="{{20}}px" next-margin="{{20}}px"
52 current="{{current}}" bindchange="bindtransition"> 52 current="{{current}}" bindchange="bindtransition">
53 - <block wx:for="{{sellers}}" wx:key="sellers.key"> 53 + <block wx:for="{{markers}}" wx:key="markers.key">
54 <swiper-item bindtap="gotoDetail" data-sid="{{item.id}}" wx:if="{{item.display!='none'}}"> 54 <swiper-item bindtap="gotoDetail" data-sid="{{item.id}}" wx:if="{{item.display!='none'}}">
55 <view class="seller" id="seller-{{item.id}}"> 55 <view class="seller" id="seller-{{item.id}}">
56 - <sb-tr seller="{{item}}" hasActivity="{{true}}"></sb-tr> 56 + <sb-tr seller="{{item.seller}}" hasActivity="{{true}}"></sb-tr>
57 </view> 57 </view>
58 </swiper-item> 58 </swiper-item>
59 </block> 59 </block>