import { View, star, getViewData } from "../../utils/util.js";
let app = getApp();
let cityName;
Page({
data: {
allCity: [],
cityHot: [],
viewHot: [],
viewList: [],
active: true,
viewDetail: [],
loading: true,
animationData: {}
},
onLoad() {
let _this = this;
// 获取热门城市
new View("http://70989421.appservice.open.weixin.qq.com/data/city.json", "get").send((res) => {
let data = res.data.result;
dealCityHot(data);
this.getCity();
})
// 获取热门景区
new View("http://70989421.appservice.open.weixin.qq.com/data/view.json", "get").send((res) => {
let data = res.data.result;
dealViewHot(data);
})
// 处理获取到的城市数据
function dealCityHot(data) {
// 获取前4个信息
let cityHot = data.splice(0, 4);
_this.setData({
allCity: data,
cityHot: cityHot
});
}
// 处理获取到的景点数据
function dealViewHot(data) {
//获取前9个景区信息
let viewHot_1 = data.splice(0, 3);
let viewHot_2 = data.splice(0, 3);
let viewHot_3 = data.splice(0, 3);
// 数据结构满足[[],[],[]]结构,页面中for使用
let arr = [];
arr.push(viewHot_1);
arr.push(viewHot_2);
arr.push(viewHot_3);
_this.setData({
viewHot: arr
})
}
},
getCity() {
let cityName;
let _this = this;
let cityId;
// 允许获取位置
wx.showModal({
title: "地理位置",
content: '允许 "旅游天地+" 访问您的位置吗?',
cancelText: "不允许",
confirmText: "允许",
success(res) {
// 允许
if (res.confirm) {
wx.chooseLocation({
success: function (res) {
// 获取城市名
if (/省/.test(res.address)) {
cityName = res.address.split("省")[0]
} else {
cityName = res.address.split("市")[0]
}
getViewData(_this.data.allCity, cityName, function (res) {
_this.spliceTwoView(res)
})
}
})
} else {
// 默认地址北京
cityName = "北京";
// 处理数据
getViewData(_this.data.allCity, cityName, function (res) {
_this.spliceTwoView(res)
});
}
}
});
},
// 首页加载2个景点数据
spliceTwoView(res) {
let resultArr = res.splice(0, 2)
this.setData({
viewList: resultArr,
loading: false
})
this.enterAnimate();
// 缓存获取到的景区数据,切换时候不在重新获取
if (this.data.active) {
wx.setStorageSync('aroundViewList', resultArr)
} else {
wx.setStorageSync('countryViewList', resultArr)
}
},
// 获取周边热门游
getaroundView() {
this.tabGetData(true, true, "aroundViewList", cityName)
},
// 获取国内热门游游
getcountryView() {
this.tabGetData(false, true, 'countryViewList', "北京")
},
tabGetData(active, loading, key, city) {
let _this = this;
this.leaveAnimate();
this.setData({
active: active,
loading: loading
})
if (wx.getStorageSync(key)) {
this.setData({
viewList: wx.getStorageSync(key),
loading: !loading
});
this.enterAnimate();
} else {
getViewData(_this.data.allCity, city, function (res) {
_this.spliceTwoView(res)
})
}
},
// 进入景点列表
enterViewList() {
let allcity = JSON.stringify({
allcity: this.data.allCity
})
wx.navigateTo({
url: 'view-list/view-list?allcity=' + allcity + ''
})
},
// 动画
enterAnimate() {
let animation = wx.createAnimation({
duration: 1000,
timingFunction: 'ease',
})
animation.opacity(1).step()
this.setData({
animationData: animation.export()
})
},
leaveAnimate() {
let animation = wx.createAnimation({
duration: 100,
timingFunction: 'ease',
})
animation.opacity(0).step()
this.setData({
animationData: animation.export()
})
},
// 进入景点详情
enterDetail(e) {
let sid=e.currentTarget.dataset.id;
wx.navigateTo({
url: 'view-detail/view-detail?sid='+sid+''
})
}
})
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
微信小程序开发-【精品】旅游类案例源码.zip (88个子文件)
【精品】旅游类
tour
app.js 530B
images
QQ截图20170213192206.png 112KB
personal
xiugai.png 2KB
img.png 8KB
navbar
find.png 961B
home.png 687B
destination_active.png 1KB
find_active.png 960B
destination.png 1KB
home_active.png 673B
my.png 635B
my_active.png 640B
QQ截图20170213192141.png 331KB
destination
view4.png 148KB
view1.png 122KB
view2.png 135KB
tab_icon.png 396B
view3.png 147KB
bg.png 229KB
view.png 74KB
destination.png 2KB
QQ截图20170213192053.png 292KB
find
view1.png 314KB
view2.png 650KB
more.png 339B
view3.png 472KB
QQ截图20170213192109.png 285KB
home
all_star.png 529B
no_star.png 287B
swiper-item2.png 79KB
swiper-item1.png 57KB
food.png 30KB
ticket.png 31KB
banner.png 540KB
view_detail.png 4KB
view.png 24KB
half_star.png 506B
img.png 5KB
hotel.png 29KB
data
city.json 43KB
view.json 13KB
view-detail.json 35KB
utils
util.js 3KB
pages
personal
personal.wxml 2KB
modify-info
modify-info.wxss 2KB
modify-info.js 3KB
modify-info.wxml 2KB
modify-info.json 129B
personal.json 135B
personal.js 652B
personal.wxss 5KB
destination
destination.wxml 2KB
destination.js 1022B
destination.json 131B
cityView
cityView.json 88B
cityView.js 259B
cityView.wxml 3KB
cityView.wxss 2KB
destination.wxss 4KB
index
index.wxml 3KB
index.js 4KB
view-list
view-list.js 953B
view-list.wxml 512B
view-list.wxss 271B
view-list.json 130B
index.wxss 4KB
view-list-template
view-list.wxml 1KB
view-list.wxss 2KB
ratings-template
ratings.wxml 803B
star-template
star.wxml 483B
star.wxss 404B
ratings.wxss 1KB
view-detail
view-detail.js 1KB
view-detail.json 130B
view-detail.wxss 6KB
view-detail.wxml 3KB
index.json 128B
find
find.wxss 1010B
find.json 128B
find.wxml 939B
find.js 436B
app.json 1KB
app.wxss 1B
145036ip2d0vnpynvnm029.png 285KB
临时资源.zip 1.27MB
145036gyy46w4wyivz4zmz.png 112KB
145035v7tr8u3nhnj388u4.png 331KB
145035ocwvqfdg3wrrywc5.png 292KB
共 88 条
- 1
芝麻粒儿
- 粉丝: 5w+
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 批量将py编译为pyd文件.atbx
- Python项目-学生管理系统
- verilog HDL硬件语法设计包括算术运算三人表决器Verilog的阻塞和非阻塞赋值源码例程quartus13.1工程合集
- 【文章话题分类论文】OpenAlex Topic Classification Whitepaper
- linux学习常用命令
- 功率拓扑快速参考指南-ti,TI官方出品
- 开关电源拓朴图表,各种电路拓扑表格
- 登录和注册 前端:vue3+iview plus +axios 后台:spring boot +mybatis
- 软件测试入门简介:从基础到实践的全面介绍
- 2024CDA Level Ⅰ 认证考试大纲
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
- 3
- 4
前往页