// pages/index/sw/index.js let config = require("../../../config/config.js"); let Http = require("../../../utils/HttpBasics"); let app = getApp(); // 请求数据 Component({ /** * 组件的属性列表 */ properties: {}, /** * 组件的初始数据 */ data: { tabs: [], list: [], flag: "", loading: true, //"上拉加载"的变量,默认false,隐藏 content:"", return_list: [], current: 0, current_scroll: 0, pageNum: 1, // 设置加载的第几次,默认是第一次 pageSize: 10, //返回数据的个数 searchLoadingComplete: false, //“没有数据”的变量,默认false,隐藏 allow_load: true // 是否允许继续加载标识 默认 true 允许,false 加载完成 }, /** * 组件的方法列表 */ methods: { handleChange({ detail }) { this.setData({ current: detail.key }); }, handleChangeScroll({ detail }) { let that = this; // 切换tab时重新初始化下list 和 allow_load that.setData({ current_scroll: detail.key, flag: "click", list: [], allow_load: true }); this.getList(detail.key, 1); var val = detail.key; //通过这个传递数据 var myEventDetail = { val: val, pageNum: 1 }; // detail对象,提供给事件监听函数 this.triggerEvent("myevent", myEventDetail); }, getList(key, pageNum) { var that = this; app.couponListCallback = token => { Http.setToken(token); // 券list获取 if (that.data.allow_load) { that.setData({ loading:true, content:'小主,我在玩命加载中...' }) // 根据 key == 0 区分全部或其它tab,决定是否传参数 business if (key == 0) { var param = { pageNum: pageNum, pageSize: 6, targetAd: 1 }; } else { var param = { pageNum: pageNum, pageSize: 6, business: key, targetAd: 1 }; } // 请求接口 Http.get({ url: config.api.couponChannelList, data: param }).then(res => { console.log(res); /** * 加载完成 */ if (pageNum >= res.data.pages) { that.setData({ allow_load: false }); } /** * 先赋值后渲染页面 * concat 不会改变原数组值 * push 会改变原数组值,但不会一条一条插入,而是整个数组插入 */ that.data.list = that.data.list.concat(res.data.list); that.setData({ list: that.data.list }); }); setTimeout(function() { that.setData({ loading:false, }) }, 1400); } else { console.info("allow_load==false 已禁止加载"); that.setData({ loading:true, content:"^_^再拉裤子就掉啦ʅ(´◔౪◔)ʃ" }) setTimeout(function(){ that.setData({ loading:false, }) },1400) } }; if (app.globalData.token && app.globalData.token != null) { app.couponListCallback(app.globalData.token); } } }, ready() { let that = this; app.businessListCallback = token => { Http.setToken(token); // business获取 Http.get({ url: config.api.businessList, data: { pageNum: 1, pageSize: 15, type: 1 } }).then(res => { that.setData({ tabs: res.data.list }); }); }; if (app.globalData.token && app.globalData.token != null) { app.businessListCallback(app.globalData.token); } that.getList(0, 1); } });