import commonApi from '../../../api/common'; const app = getApp(); Page({ /** * 页面的初始数据 */ data: { currentCommunity:null, defaultCommunityId:null, communityList:[], scrollViewHeight:0, lng:0, lat:0, pager:{limit:10,loading:false,loadAll:false,pageIndex:0,refreshTrigger:false} }, onSelectItem(event){ const pages = getCurrentPages(); const prePage = pages[pages.length-2]; const currentCommunity = event.currentTarget.dataset.item; this.setData({currentCommunity}) prePage.changeCommunity(currentCommunity); wx.navigateBack(); }, /** * 生命周期函数--监听页面加载 */ onLoad(options) { const windowInfo = wx.getWindowInfo(); this.setData({ scrollViewHeight:windowInfo.windowHeight, defaultCommunityId:options.communityId }) app.getLocation().then((res)=>{ this.setData({ lng:res.longitude, lat:res.latitude }); this.loadList(); }).catch(()=>{ this.loadList(); }) }, refreshList(){ this.data.pager.loadAll = false; this.data.pager.pageIndex = 0; this.setData({ pager:this.data.pager }); this.loadList(); }, loadList(){ if(this.data.pager.loading||this.data.pager.loadAll){ return; } this.data.pager.loading = true; this.setData({ pager:this.data.pager }); const data = { skip:this.data.pager.limit*this.data.pager.pageIndex, limit:this.data.pager.limit, status:'OPENING' } if(this.data.lng&&this.data.lat){ data.longitude = this.data.lng; data.latitude = this.data.lat; } commonApi.community.list(data).then((data)=>{ const communityList = data.items; let currentCommunity; data.items.map((item)=>{ if(item.distance){ if(item.distance>=100){ item.distance = parseFloat(item.distance/1000).toFixed(1)+'km'; }else{ item.distance+='m'; } } if(item.id==this.data.defaultCommunityId){ currentCommunity = item; } }) if(this.data.pager.pageIndex==0){ this.data.communityList = data.items; }else{ this.data.communityList = this.data.communityList.concat(data.items); } this.data.pager.loading = false; this.data.pager.pageIndex++; this.data.pager.refreshTrigger = false; if(data.items.length