list.js 2.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. /*
  2. * @Author: zzy6937@qq.com
  3. * @Date: 2019-08-08 09:07:21
  4. * @LastEditors: Please set LastEditors
  5. * @LastEditTime: 2020-11-19 09:49:33
  6. * @Description:
  7. */
  8. export default {
  9. data() {
  10. return {
  11. mixins_post: 'postForm',
  12. mixins_page: {
  13. pageNum: 1,
  14. pageSize: 10
  15. },
  16. mixins_list: [],
  17. mixins_pageset: {
  18. total: 0,
  19. pageNum: 1,
  20. pageSize: 15,
  21. sortColumn: null, // 当前列的字段
  22. sortOrder: null // 排序方式 顺序:ASC 倒序:DESC
  23. },
  24. mixins_dataUrl: '',
  25. mixins_query: {},
  26. mixins_onQuery: true
  27. };
  28. },
  29. methods: {
  30. sortChange(obj) {
  31. if (obj) {
  32. this.mixins_pageset.sortColumn = obj.prop;
  33. this.mixins_pageset.sortOrder = obj.order;
  34. this.getList();
  35. }
  36. },
  37. pageChange(obj) {
  38. if (obj.pageSize) {
  39. this.mixins_pageset.pageSize = obj.pageSize;
  40. }
  41. if (obj.page) {
  42. this.mixins_pageset.pageNum = obj.page;
  43. }
  44. this.getList();
  45. },
  46. getList() {
  47. if (!this.mixins_dataUrl) {
  48. this.mixins_onQuery = false;
  49. return;
  50. }
  51. let data = Object.assign({}, this.mixins_pageset, this.mixins_query);
  52. this.mixins_onQuery = true;
  53. delete data.total;
  54. this.$http[this.mixins_post](this.mixins_dataUrl, data)
  55. .then(({ status, data: { list = [], total = 0 }, msg }) => {
  56. this.mixins_onQuery = false;
  57. if (0 === status) {
  58. let timer = +new Date();
  59. this.mixins_list = list;
  60. this.mixins_pageset.total = total * 1;
  61. } else {
  62. this.$message.error(msg);
  63. }
  64. })
  65. .catch((err) => {
  66. this.mixins_onQuery = false;
  67. });
  68. },
  69. // 搜索时,把搜索页重置为1
  70. mixins_search(type) {
  71. if (type == 'del') {
  72. if (this.mixins_pageset.total % this.mixins_pageset.pageSize === 1) {
  73. this.mixins_pageset.pageNum = this.mixins_pageset.pageNum > 1 ? this.mixins_pageset.pageNum - 1 : 1;
  74. } else {
  75. this.mixins_pageset.pageNum = this.mixins_pageset.pageNum;
  76. }
  77. } else if (type == 'refresh') {
  78. this.mixins_pageset.pageNum = this.mixins_pageset.pageNum;
  79. } else {
  80. this.mixins_pageset.pageNum = 1;
  81. }
  82. this.getList();
  83. }
  84. }
  85. };