// pages/liveStream/liveStream.js var t = require("../../../utils/util"), ut = t, e = require("../../../utils/common.js"), a = require("../../../utils/wxParse/wxParse.js"), s = getApp(), i = s.request, rq = i, oo = s.globalData, o = s.globalData.setting, os = o; var regeneratorRuntime = require('../../../utils/runtime.js'); Page({ /** * 页面的初始数据 */ data: { curPage: 1, pageNum: 0, list: [], live: {} }, // 点击直播列表项 clickItem: function (e) { // id:列表项id // live:直播类别 即将开始/直播中/精彩回放 wx.navigateTo({ url: '/packageA/pages/liveStreamDetails/liveStreamDetails?id=' + e.currentTarget.dataset.id + '&live=' + e.currentTarget.dataset.live }) console.log('options-->'); }, // 点击 订阅/观看直播/观看回放 按钮,跳转直播组件 clickLive: function (e) { console.log('当前房间号roomid:', e.currentTarget.dataset.roomid); let roomId = e.currentTarget.dataset.roomid; let customParams = encodeURIComponent(JSON.stringify({ path: 'pages/index/index', pid: 1 })); wx.navigateTo({ url: `plugin-private://wx2b03c6e691cd7370/pages/live-player-plugin?room_id=${roomId}&custom_params=${customParams}` }) }, updateLiveList: function () { return new Promise((resolve, reject) => { let self = this; getApp().request.put("/api/weshop/wx/livelist/updatelivelist", { data: { storeId: 1 }, success: function (res) { console.log('我发起了PUT请求,请求结果:', res.data); resolve(); } }); }); }, loadLiveList: function (curPage) { // console.log('---->curPage', curPage); var live = {}; live.toBegin = []; // 即将开始 live.ing = []; // 直播中 live.over = []; // 已结束 var that = this; var storeId = o.stoid; // 请求数据 getApp().request.promiseGet("/api/weshop/wx/livelist/page", { data: { storedId: storeId, page: curPage } }).then(res => { if (res.data.code == 0) { // 计算总页数 var total = res.data.data.total; var pageSize = res.data.data.pageSize; var pageNum = total % pageSize; that.setData({ pageNum: pageNum }); // 如果当前请求的是第一页数据,则执行赋值,否则执行合并再赋值 if(curPage == 1) { that.setData({ list: res.data.data.pageData // 测试 // list: that.data.list.concat(res.data.data.pageData) }); } else { that.setData({ list: that.data.list.concat(res.data.data.pageData) }); }; var list = that.data.list; for(var i in list) { var liveStatus = list[i].live_status; if (liveStatus == '101') { live.ing.push(list[i]); } else if (liveStatus == '102') { live.toBegin.push(list[i]); } else if (liveStatus == '103') { live.over.push(list[i]); } } that.setData({ live }); curPage ++; that.setData({ curPage }); } else { console.error('请求失败!!!!!'); } }) }, /** * 生命周期函数--监听页面加载 */ onLoad: function (options) { }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady: function () { var self = this; this.updateLiveList().then(() => { self.loadLiveList(1); }); }, /** * 生命周期函数--监听页面显示 */ onShow: function () { }, /** * 生命周期函数--监听页面隐藏 */ onHide: function () { }, /** * 生命周期函数--监听页面卸载 */ onUnload: function () { }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh: function () { var self = this; wx.showNavigationBarLoading(); //在标题栏中显示加载 setTimeout(function() { self.loadLiveList(1); wx.hideNavigationBarLoading(); //完成停止加载 wx.stopPullDownRefresh(); //停止下拉刷新 }, 500); }, /** * 页面上拉触底事件的处理函数 */ onReachBottom: function () { var self = this; var curPage = this.data.curPage; var pageNum = this.data.pageNum; if(curPage <= pageNum) { wx.showLoading({ title: '加载中...', }) setTimeout(function() { self.loadLiveList(curPage); wx.hideLoading(); }, 500); } else { wx.showToast({ title: '已经到底啦~', duration: 1000 }) } console.log('当前curpage',curPage); }, /** * 用户点击右上角分享 */ onShareAppMessage: function () { if (res.from === 'button') { // 来自页面内转发按钮 console.log(res.target) } return { title: '直播列表' // path: '/page/user?id=123' } }, onShareTimeline: function (res) { if (res.from === 'button') { // 来自页面内转发按钮 console.log(res.target) } return { title: '直播列表' // path: '/page/user?id=123' } }, })