table.js 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. import { mock } from "mockjs";
  2. import { handleRandomImage } from "../utils";
  3. const List = [];
  4. const count = 999;
  5. for (let i = 0; i < count; i++) {
  6. List.push(
  7. mock({
  8. uuid: "@uuid",
  9. id: "@id",
  10. title: "@csentence(1, 2)",
  11. "status|1": ["published", "draft", "deleted"],
  12. author: "@cname",
  13. datetime: "@datetime",
  14. pageViews: "@integer(300, 5000)",
  15. img: handleRandomImage(200, 200),
  16. smallImg: handleRandomImage(40, 40),
  17. switch: "@boolean",
  18. percent: "@integer(80,99)",
  19. })
  20. );
  21. }
  22. export default [
  23. {
  24. url: "/table/getList",
  25. type: "post",
  26. response: (config) => {
  27. if (!config.body) {
  28. return {
  29. code: 200,
  30. msg: "success",
  31. totalCount: count,
  32. data: mock({
  33. "data|50": [
  34. {
  35. id: "@id",
  36. title: "@csentence(1, 2)",
  37. "status|1": ["published", "draft", "deleted"],
  38. author: "@cname",
  39. datetime: "@datetime",
  40. pageViews: "@integer(300, 5000)",
  41. img: handleRandomImage(200, 200),
  42. smallImg: handleRandomImage(40, 40),
  43. switch: "@boolean",
  44. percent: "@integer(80,99)",
  45. },
  46. ],
  47. }).data,
  48. };
  49. }
  50. const { title = "", pageNo = 1, pageSize = 20 } = config.body;
  51. let mockList = List.filter((item) => {
  52. if (title && item.title.indexOf(title) < 0) return false;
  53. return true;
  54. });
  55. const pageList = mockList.filter(
  56. (item, index) =>
  57. index < pageSize * pageNo && index >= pageSize * (pageNo - 1)
  58. );
  59. return {
  60. code: 200,
  61. msg: "success",
  62. totalCount: count,
  63. data: pageList,
  64. };
  65. },
  66. },
  67. {
  68. url: "/table/doEdit",
  69. type: "post",
  70. response: (config) => {
  71. return {
  72. code: 200,
  73. msg: "模拟保存成功",
  74. };
  75. },
  76. },
  77. {
  78. url: "/table/doDelete",
  79. type: "post",
  80. response: (config) => {
  81. return {
  82. code: 200,
  83. msg: "模拟删除成功",
  84. };
  85. },
  86. },
  87. ];