This commit is contained in:
张慢慢
2021-05-24 13:56:00 +08:00
commit a7995d90bc
208 changed files with 13143 additions and 0 deletions

View File

@@ -0,0 +1,180 @@
// 获取城市
const app = getApp()
Page({
/**
* 页面的初始数据
*/
data: {
winHeight : 0, //可视高度
cityList : [], //城市列表
adcode : 0, //城市code
scrollTop : 0, //置顶高度
scrollTopId : '', //置顶id
searchLetter: [], //热门城市
regionShow : false, //区域显示开关
city : '', //城市名称
area : '', //区域名称
cityName : '', //定位城市名称
defaultcity : '', //定位区域名称
defaultregi : '', //区域名称
regiList : [], //区域列表
address : {
city_code: "",
area_code: ""
}
},
onLoad(e) {
wx.getLocation({
success: res => {
// 解析坐标
                getApp().qqmapsdk.reverseGeocoder({
                    location: {
                        latitude    : res.latitude,
                        longitude   : res.longitude
                    },
                    success: res=>{
                        this.setData({
defaultcity : res.result.ad_info.city,
defaultregi : res.result.ad_info.district
                        })
                    }
                })
},
fail: res => {}
})
if(e.area === '') e.area_code = '0'
this.setData({
address : {
area_code: e.area_code,
city_code: e.city_code,
area: e.area,
city: e.city
}
        })
// 获取全部城市
this.local();
},
/**
* 生命周期函数--监听页面加载
*/
onShow() {},
/**
* 全部城市
*/
local() {
wx.$api.index.newCity().then(res=>{
this.setData({
cityList : res.data
})
// 获取区级列表
this.regilist(this.data.address.city_code)
}).catch(err=>{
if(!err.login){
// 写入缓存
wx.setStorage({
key : 'token',
data : ''
})
}
})
},
/**
* 城市字母
*/
clickLetter (e) {
var showLetter = e.currentTarget.dataset.letter;
this.setData({
showLetter : showLetter,
isShowLetter: true,
scrollTopId : showLetter,
})
var that = this;
setTimeout(function () {
that.setData({
isShowLetter: false
})
}, 1000)
},
/**
* 选择城市
*/
bindCity(e) {
let stairid = e.currentTarget.dataset.citycode,
city = e.currentTarget.dataset.city
this.setData({
address: {
city_code: stairid,
city: city
}
})
// 获取区级列表
this.regilist(stairid)
},
/**
* 地区列表
*/
regilist(areaCode) {
wx.$api.index.newidxCity(areaCode).then(res=>{
res.data.unshift({ code: '0', name:'全部'})
this.setData({
regiList : res.data
})
})
},
/**
* 选择市区返回
*/
regionOpt (e) {
let area_name = e.currentTarget.dataset.city
var pages = getCurrentPages();
var prevPage = pages[pages.length - 2];
if(area_name === '全部') area_name = this.data.address.city
prevPage.setData({
city: area_name
})
wx.navigateBack({
delta: 1
})
},
/**
* 选择定位城市返回
*/
nowLocation () {
var pages = getCurrentPages();
var prevPage = pages[pages.length - 2];
prevPage.setData({
cityName: this.data.defaultcity,
city : this.data.defaultregi
})
wx.navigateBack({
delta: 1
})
},
/**
* 点击当前回到顶部
*/
hotCity () {
this.setData({
scrollTop: 0,
})
}
})