// pages/location/location.js
|
|
var listData = require('../../data/test-data.js');
|
import {CityModel} from '../../models/city';
|
|
const cityModel = new CityModel();
|
|
Page({
|
|
/**
|
* 页面的初始数据
|
*/
|
data: {
|
locationList: [],
|
hidden: true,
|
showHidelayer: false,
|
selectCity: '未选择',
|
searchResult: []
|
},
|
onTap: function (e) {
|
wx.setStorageSync('location', e.currentTarget.dataset.key);
|
wx.switchTab({
|
url: '/pages/index/index'
|
});
|
},
|
getLocation: function () {
|
// wx.getLocation({
|
// type: 'gcj02',
|
// success: function (res) {
|
// var latitude = res.latitude
|
// var longitude = res.longitude
|
// wx.request({
|
// url: 'http://api.map.baidu.com/geocoder/v2/?ak=btsVVWf0TM1zUBEbzFz6QqWF&coordtype=gcj02ll&location=' + latitude + ',' + longitude + '&output=json&pois=0',
|
// method: "get",
|
// success: function (res) {
|
// console.log(res.data.result.formatted_address)
|
// wx.setStorageSync('location', res.data.result.formatted_address.substr(res.data.result.formatted_address.indexOf('市') + 1, 10))
|
// }
|
// })
|
// }
|
// })
|
// wx.switchTab({
|
// url: '/pages/index/index'
|
// })
|
|
var that = this;
|
wx.chooseLocation({
|
success: function success(res) {
|
// console.log(res)
|
that.setData({
|
address: res.name || res.address || '点击定位当前位置'
|
});
|
}
|
});
|
// todo 添加地址后展示地址
|
|
},
|
input: function (e) {
|
this.setData({
|
inputValue: e.detail.value
|
});
|
},
|
searchTap: function (text) {
|
let that = this;
|
if (this.data.inputValue) {
|
this.setData({
|
hidden: false
|
});
|
this.search(this.data.inputValue);
|
} else {
|
this.setData({
|
hidden: true
|
});
|
}
|
// wx.request({
|
// url: 'http://api.map.baidu.com/place/v2/search?query=' + text +'&page_size=20&page_num=0&scope=2®ion=南昌&output=json&ak=btsVVWf0TM1zUBEbzFz6QqWF',
|
// success: function(res){
|
// console.log(res);
|
// that.setData({
|
// locationList:res.data.results
|
// })
|
// }
|
// })
|
},
|
|
search(value) {
|
let searchResult = [];
|
// let searchResult2 = [];
|
this.data.cityList.Provinces.forEach((item) => {
|
// if(item.province.indexOf(value)>=0){
|
// console.log(item)
|
// } else
|
|
console.log(item);
|
item.Citys.forEach((items) => {
|
console.log(items);
|
if (items.CityName.indexOf(value) >= 0) {
|
searchResult.push(
|
{
|
CityName: items.CityName,
|
Shops: items.Shops
|
}
|
|
);
|
console.log(searchResult);
|
|
}
|
});
|
|
|
// if(item.city.filter((item)=>{
|
// return item == value
|
// })){
|
// // console.log(item)
|
// }
|
// if(){
|
// console.log(item)
|
// }
|
|
// for (let key in item) {
|
// console.log(item[key])
|
// }
|
});
|
|
if (searchResult.length > 0) {
|
console.log('搜索结果', searchResult);
|
this.setData({
|
searchResult
|
});
|
}
|
},
|
// preventMove() {
|
// // 利用catchtouchmove阻止背景滚动 不用添加任何代码
|
// // 只适合模态层不需要滚动的场景
|
// },
|
// 键盘发送按钮点击事件
|
keyboardSearch: function (e) {
|
console.log('发生了键盘搜索事件,携带数据为:', e.detail.value);
|
this.searchTap();
|
},
|
|
clearInput() {
|
console.log('清除输入的数据');
|
this.setData({
|
hidden: true,
|
inputValue: ''
|
});
|
},
|
|
//搜索结果点击
|
resultTap(e) {
|
this.cityItemTap(e);
|
this.clearInput();
|
},
|
|
cityItemTap(e) {
|
// console.log(e.currentTarget.dataset.city);
|
this.setData({
|
selectCity: e.currentTarget.dataset.city,
|
storeList: e.currentTarget.dataset.shops
|
});
|
this.openHidelayer();
|
},
|
|
openHidelayer() {
|
this.setData({
|
showHidelayer: true
|
});
|
|
},
|
maskTap(event) {
|
this.setData({
|
showHidelayer: event.detail.isShow
|
});
|
},
|
selectShop(e){
|
console.log(e.detail);
|
cityModel.selectShop(e.detail.ccCode,e.detail.shopId).then((res)=>{
|
console.log(res);
|
if(res.state&&res.state=='success'){
|
// console.log('jjjj');
|
wx.setStorageSync('shopName',res.shopccname)
|
wx.reLaunch({
|
url: '../index/index'
|
})
|
}
|
})
|
},
|
/**
|
* 生命周期函数--监听页面加载
|
*/
|
onLoad: function (options) {
|
wx.showLoading();
|
cityModel.getCityList().then((res) => {
|
wx.hideLoading();
|
console.log('promise改写请求', res);
|
this.setData({
|
cityList: res
|
});
|
let storeList = [];
|
res.Provinces.forEach((item) => {
|
item.Citys.forEach((items) => {
|
storeList = storeList.concat(items.Shops);
|
});
|
|
|
});
|
console.log(storeList);
|
this.setData({
|
storeList
|
});
|
});
|
|
this.setData({
|
windowHeight: wx.getSystemInfoSync().windowHeight
|
// storeList: listData.storeList,
|
// cityList: listData.cityList
|
});
|
},
|
|
/**
|
* 生命周期函数--监听页面初次渲染完成
|
*/
|
onReady: function () {
|
|
},
|
|
/**
|
* 生命周期函数--监听页面显示
|
*/
|
onShow: function () {
|
|
},
|
|
/**
|
* 生命周期函数--监听页面隐藏
|
*/
|
onHide: function () {
|
|
},
|
|
/**
|
* 生命周期函数--监听页面卸载
|
*/
|
onUnload: function () {
|
|
},
|
|
/**
|
* 页面相关事件处理函数--监听用户下拉动作
|
*/
|
onPullDownRefresh: function () {
|
|
},
|
|
/**
|
* 页面上拉触底事件的处理函数
|
*/
|
onReachBottom: function () {
|
|
},
|
|
/**
|
* 用户点击右上角分享
|
*/
|
// onShareAppMessage: function () {
|
|
// }
|
});
|