// pages/mine/mineAccount/mineOrder/mineOrder.js import UserApi from '../../../../net/api/userApi' Page({ /** * 页面的初始数据 */ data: { orderList: [], //订单列表 pageData: { page: 1, rows: 10, keywords: '' }, //检索参数 loadingState: 'loading', //加载状态 listRefreshTrig: false, //list刷新状态 isLoadMore: false, //加载更多的状态 hasMore: true, //是否有更多数据 keywords: '', //搜索关键字 }, /** * 生命周期函数--监听页面加载 */ onLoad(options) { wx.setNavigationBarTitle({ title: '我的订单', }) wx.setNavigationBarColor({ frontColor: '#000000', // 必写项,字体颜色仅支持#ffffff和#000000 backgroundColor: '#F0F0F0', // 传递的颜色值,仅支持十六进制颜色 animation: { // 可选项 duration: 500, timingFunc: 'easeIn' } }) this.doRefreshList() }, inputKeywords(e) { this.setData({ keywords: e.detail.value }) }, //刷新列表 doRefreshList() { console.log('正在刷新...') const _self = this _self.setData({ listRefreshTrig: true, loadingState: 'loading', hasMore: true, 'pageData.page': 1, 'pageData.keywords': _self.data.keywords, isLoadMore: false }) _self.doGetMineOrderList(true) }, //加载更多 doLoadMore() { //判断是否正在加载中 与是否存在更多数据 const _self = this if (_self.data.isLoadMore || !_self.data.hasMore) { return } _self.setData({ isLoadMore: true, 'pageData.page': ++_self.data.pageData.page, keywords: _self.data.keywords }) _self.doGetMineOrderList(false) }, //获取我的订单列表 isRefresh false 加载更多 true 刷新 doGetMineOrderList(isRefresh) { const _self = this _self.setData({ orderList: isRefresh ? [] : _self.data.orderList, loadingState: isRefresh ? 'loading' : '' }) UserApi.doGetMineOrder(_self.data.pageData) .then(res => { var status = 'success' status = res.rows && res.rows.length > 0 ? 'success' : 'empty' _self.setData({ loadingState: isRefresh ? status : '', orderList: _self.data.orderList.concat(res.rows), listRefreshTrig: false, isLoadMore: false }) _self.setData({ hasMore: _self.data.orderList.length < res.total }) }, err => { _self.setData({ loadingState: 'error', listRefreshTrig: false, isLoadMore: false, hasMore: true }) }) }, //清除搜索内容 clearSearch() { const _self = this _self.setData({ keywords: '' }) _self.doRefreshList() }, //发起搜索 doSearchKeyWord() { const _self = this _self.doRefreshList() } })