// pages/home/home.js const storage = require('../../utils/storage.js'); const { get, post } = require('../../api/request.js'); Page({ /** * 页面的初始数据 */ data: { sessionId: "", image: "/images/ic_head_bg.jpg", userPhone: "158****0723", userName: "张三", scrollViewHeight: 0, listData: [{ name: '取水口 1', code: '1055201' }, { name: '取水口 2', code: '1055201' }, { name: '取水口 3', code: '1055201' }, { name: '取水口 3', code: '1055201' }, { name: '取水口 4', code: '1055201' }, { name: '取水口 5', code: '1055201' }, { name: '取水口 6', code: '1055201' } ], isRefreshing: false, isWXRefreshing: false }, openValve: function (e) { wx.navigateTo({ url: '/pages/waterIntake/waterIntake', }) }, calculateScrollViewHeight: function () { wx.createSelectorQuery().selectAll('.list-item').boundingClientRect((rects) => { let totalHeight = rects.reduce((sum, rect) => sum + rect.height, 0); this.setData({ scrollViewHeight: totalHeight, }); }).exec(); }, startPullDownRefresh() { if (!this.data.isWXRefreshing) { var self = this; console.log(this.data.isRefreshing); this.setData({ isRefreshing: true }); setTimeout(function () { self.setData({ isRefreshing: false, // 将triggered属性设置为false,表示下拉刷新已完成 }) console.log('下拉刷新已完成'); }, 3000); } }, //获取用户数据 getUserData() { get('/items') .then((data) => { this.setData({ items: data }); }) .catch((error) => { console.error('Failed to fetch data:', error); }); }, /** * 生命周期函数--监听页面加载 */ onLoad(options) { // 使用 wx.nextTick 等待页面渲染完成 wx.nextTick(() => { this.calculateScrollViewHeight(); }); console.log("onLoad:" + options.param); }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady() { //判断本地是否保存sessionId if (storage.isHasKeySync("sessionId")) { storage.getItem('sessionId').then((data) => { this.setData({ sessionId: data }); if (sessionId !== "") { } }).catch((err) => { console.error('Failed to load parameter:', err); }); } else { console.log('Failed to load parameter:false'); } }, /** * 生命周期函数--监听页面显示 */ onShow() { }, /** * 生命周期函数--监听页面隐藏 */ onHide() { }, /** * 生命周期函数--监听页面卸载 */ onUnload() { }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh() { // 下拉刷新触发的逻辑,可以是请求数据等操作 // 例如,请求数据后更新页面内容 console.log(this.data.isRefreshing); this.setData({ isWXRefreshing: true }); console.log(this.data.isRefreshing); // 数据请求完成后,停止下拉刷新的动画 var self = this; setTimeout(function () { self.setData({ isWXRefreshing: false, // 将triggered属性设置为false,表示下拉刷新已完成 }) console.log('下拉刷新已完成'); }, 3000); }, /** * 页面上拉触底事件的处理函数 */ onReachBottom() { }, /** * 用户点击右上角分享 */ onShareAppMessage() { } })