mixin.js 836 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. export default {
  2. data() {
  3. return {
  4. // 下拉刷新标识
  5. _freshing: false,
  6. triggered: false,
  7. // 分页信息
  8. pageIndex: 1,
  9. pageSize: 10,
  10. loadStatus: 'loadmore',
  11. userInfo: this.$storage.getStorageSync('userInfo') || '' // 本地用户信息
  12. }
  13. },
  14. methods: {
  15. // 下拉刷新
  16. async onRefresh() {
  17. this.triggered = true
  18. if (this._freshing) return;
  19. this.triggered = true
  20. this._freshing = true;
  21. this.pageIndex = 1
  22. this.data = []
  23. await this.getList()
  24. // 太快会导致刷新两次
  25. setTimeout(() => {
  26. this.triggered = false;
  27. this._freshing = false;
  28. },1000)
  29. },
  30. // 分页加载更多
  31. loadMore() {
  32. if(this.loadStatus == "nomore") {
  33. return false;
  34. }
  35. this.loadStatus = 'loading'
  36. this.pageIndex ++
  37. setTimeout(() => {
  38. this.getList()
  39. },300)
  40. }
  41. }
  42. }