login.ts 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. // 初始化状态应用注解
  2. const initState = {
  3. // 所有下拉数据
  4. selectAll: {
  5. 藏品编号名称: [],
  6. 文物级别: [],
  7. 文物来源: [],
  8. 完残程度: [],
  9. 保存状态: [],
  10. 入藏时间范围: [],
  11. 质量范围: [],
  12. 文物类别: [],
  13. 质地: [],
  14. 年代: [],
  15. } as any,
  16. // 单个里面的藏品的附件信息
  17. fileData: {
  18. img: [],
  19. video: [],
  20. audio: [],
  21. model: [],
  22. doc: [],
  23. } as any,
  24. // 藏品的表格信息
  25. goodsTableList: [] as any,
  26. };
  27. type LoginActionType =
  28. | { type: "login/getSelectAll"; payload: any }
  29. | { type: "login/setFileData"; payload: any }
  30. | { type: "login/setGoodsSonList"; payload: any };
  31. // 频道 reducer
  32. export default function loginReducer(
  33. state = initState,
  34. action: LoginActionType
  35. ) {
  36. switch (action.type) {
  37. // 所有的下拉列表数据
  38. case "login/getSelectAll":
  39. return { ...state, selectAll: action.payload };
  40. // 新增编辑藏品的附件数据(弹窗里面的附件)
  41. case "login/setFileData":
  42. return { ...state, fileData: action.payload };
  43. // 新增编辑藏品 的外层 表格信息(新增编辑页面下面的表格)
  44. case "login/setGoodsSonList":
  45. return { ...state, goodsTableList: action.payload };
  46. default:
  47. return state;
  48. }
  49. }