list.js 1000 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. export default {
  2. watch: {
  3. },
  4. data() {
  5. return {
  6. list: {
  7. data: [],
  8. page: 1,
  9. pageSize: 20,
  10. loading: true,
  11. finished: false,
  12. total: 0,
  13. totalPage: 0,
  14. },
  15. }
  16. },
  17. methods: {
  18. resetList() {
  19. this.list = {
  20. data: [],
  21. page: 1,
  22. pageSize: 20,
  23. loading: true,
  24. finished: false,
  25. total: null,
  26. totalPage: null,
  27. }
  28. },
  29. completes(res, listKey) {
  30. this.list.loading = false
  31. if (res.code !== 1) {
  32. this.list.finished = true
  33. }
  34. let listArr = res.data.list || res.data.data || res.data[listKey]
  35. this.list.data = this.list.page === 1 ? listArr : this.list.data.concat(listArr)
  36. this.list.total = res.data.totalPage * this.list.pageSize
  37. this.list.totalPage = res.data.totalPage || res.totalPage
  38. if (!res.data.moreData) {
  39. this.list.finished = true
  40. } else {
  41. ++this.list.page
  42. }
  43. },
  44. },
  45. }