diff --git a/pages/moment/attention/index.js b/pages/moment/attention/index.js index 1862fb6..fe46955 100644 --- a/pages/moment/attention/index.js +++ b/pages/moment/attention/index.js @@ -1,6 +1,7 @@ // pages/message/index.js import { getInformationList } from "../../../api/moment" const util = require('../../../utils/util') +const event = require('../../../utils/event') const app = getApp() Component({ @@ -18,9 +19,18 @@ Component({ pageNum: 1, pageSize: 10 }, + loading: true, requesting: false, orderList: [] }, + lifetimes: { + attached: function () { + event.on('EventMessage', this, this.onEvent) + }, + detached: function () { + event.remove('EventMessage', this) + } + }, methods: { onRestart: function () { if(!this.firstShow){ @@ -31,12 +41,23 @@ Component({ } this.firstShow = true }, + onEvent: function (message) { + if(message.what == 888){ + if(!app.globalData.userInfo){ + this.setData({ orderList: [], ['form.pageNum']: 1, finished: false }) + } else { + this.onRefreshList() + } + } else if(message.what == 444 && this.firstShow){ + this.onRefreshList() + } + }, onRefreshList: function(){ if (this.data.requesting) { return } - this.setData({ orderList: [], ['form.pageNum']: 1, finished: false }) - this.fetchOrderList() + this.setData({ orderList: [], ['form.pageNum']: 1, finished: false, loading: true }) + this.fetchList() }, fetchList: function(){ if (this.data.requesting) { @@ -44,18 +65,18 @@ Component({ } this.data.requesting = true getInformationList(this.data.form).then(result => { - if (result.data.records.length) { + if (result.data && result.data.records.length) { var respList = result.data.records let nowList = `orderList[${this.data.orderList.length}]` var num = this.data.form.pageNum var finished = this.data.form.pageNum >= result.data.pages - this.setData({ [nowList]: respList, ['form.pageNum']: (num + 1), finished, requesting: false }) + this.setData({ [nowList]: respList, ['form.pageNum']: (num + 1), finished, requesting: false, loading: false }) } else { - this.setData({ finished: true, requesting: false }) + this.setData({ finished: true, requesting: false, loading: false }) } }).catch(err => { - //异常回调 - this.setData({ requesting: false }) + console.log(err) + this.setData({ requesting: false, loading: false }) util.showToast(err) }) } diff --git a/pages/moment/attention/index.wxml b/pages/moment/attention/index.wxml index f871273..4db9905 100644 --- a/pages/moment/attention/index.wxml +++ b/pages/moment/attention/index.wxml @@ -1,26 +1,31 @@ - - + - + - - - - - - - + + + 暂无数据,点击加载 - - - - - - {{finished?'到底啦~':'加载中...'}} + + + + + + + - + + + + + + + {{finished?'到底啦~':'加载中...'}} + + + \ No newline at end of file diff --git a/pages/moment/fragment/index.js b/pages/moment/fragment/index.js index 66a12ce..49e2f04 100644 --- a/pages/moment/fragment/index.js +++ b/pages/moment/fragment/index.js @@ -29,7 +29,6 @@ Component({ }, lifetimes: { - // 生命周期函数,可以为函数,或一个在methods段中定义的方法名 attached: function () { event.on('EventMessage', this, this.onEvent) }, @@ -68,7 +67,10 @@ Component({ this.triggerEvent("picker", {type: 1}) }, onCalendarChange: function(date){ - console.log(date) + var fragment = this.selectComponent('#recommend') + if(fragment && fragment.calendarChange){ + fragment.calendarChange(date) + } }, chooseCity: function(){ wx.navigateTo({url: `/pages/home/city-select/index?type=1` }) diff --git a/pages/moment/fragment/index.wxml b/pages/moment/fragment/index.wxml index a90c53f..434122c 100644 --- a/pages/moment/fragment/index.wxml +++ b/pages/moment/fragment/index.wxml @@ -17,7 +17,7 @@ - + diff --git a/pages/moment/recommend/index.js b/pages/moment/recommend/index.js index 0736327..9ddf41c 100644 --- a/pages/moment/recommend/index.js +++ b/pages/moment/recommend/index.js @@ -1,6 +1,7 @@ // pages/message/index.js import { getInformationList } from "../../../api/moment" const util = require('../../../utils/util') +const event = require('../../../utils/event') const app = getApp() Component({ @@ -21,6 +22,14 @@ Component({ requesting: false, orderList: [] }, + lifetimes: { + attached: function () { + event.on('EventMessage', this, this.onEvent) + }, + detached: function () { + event.remove('EventMessage', this) + } + }, methods: { onRestart: function () { if(!this.firstShow){ @@ -32,12 +41,28 @@ Component({ } this.firstShow = true }, + onEvent: function (message) { + if(message.what == 888){ + if(!app.globalData.userInfo){ + this.setData({ orderList: [], ['form.pageNum']: 1, finished: false }) + } else { + this.onRefreshList() + } + } else if(message.what == 444 && this.firstShow){ + this.data.form.cityId = app.nowCity.cityCode + this.onRefreshList() + } + }, + calendarChange: function(date){ + this.data.form.date = date + this.onRefreshList() + }, onRefreshList: function(){ if (this.data.requesting) { return } this.setData({ orderList: [], ['form.pageNum']: 1, finished: false }) - this.fetchOrderList() + this.fetchList() }, fetchList: function(){ if (this.data.requesting) { @@ -55,7 +80,6 @@ Component({ this.setData({ finished: true, requesting: false }) } }).catch(err => { - //异常回调 this.setData({ requesting: false }) util.showToast(err) }) diff --git a/pages/moment/theall/index.js b/pages/moment/theall/index.js index 7e08919..02c3bf1 100644 --- a/pages/moment/theall/index.js +++ b/pages/moment/theall/index.js @@ -1,4 +1,5 @@ // pages/message/index.js +import { getInformationList } from "../../../api/moment" const util = require('../../../utils/util') const area = require("../../../const/area.js") const app = getApp() @@ -73,7 +74,7 @@ Component({ } this.setData({ requesting: true }) getInformationList(this.data.form).then(result => { - if (result.data.records.length) { + if (result.data && result.data.records.length) { var respList = result.data.records let nowList = `orderList[${this.data.orderList2.length}]` var num = this.data.form.pageNum @@ -83,7 +84,6 @@ Component({ this.setData({ finished: true, requesting: false }) } }).catch(err => { - //异常回调 this.setData({ requesting: false }) util.showToast(err) })