checkBody.js 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. import {SET,SETNUMBER4,SETSELECTED4,SETCHECKBOX,ADDLABELITEM,SETCHECKTEXT,SETSEARCHDATA,
  2. SELECTSEARCHDATA,CHANGECHECKTEXTLABEL,CLEARCHECKBODY,CHECK_FOCUS_INDEX,CHECKBODY_CLEAR,
  3. SETCHECKINPUT,DEL_CHECKBODY,CHANGECHECKTEXTLABEL_NUMBER,CHECKCONFIRMSELECTED,CHECKBODY_MUL} from '../types/checkBody.js';
  4. import {set,setNumberValue,setRadioValue,setCheckBoxValue,addLabelItem,setCheckText,
  5. setSearchData,insertLabelData,changeLabelVal,clearCheckBody,setInputLabel,backspaceText,
  6. changeNumLabelVal,confirm,multipleComfirn} from '../actions/checkBody.js';
  7. import config from '@config/index.js';
  8. //const block = Object.assign(JSON.parse(config.textLabel),{full:false});//空白时保留一个自由文本标签
  9. const initState = {
  10. data:[],
  11. saveText:[], //saveText为生成的纯文本
  12. searchData:[],
  13. selecteds:[],
  14. focusIndex:'',
  15. isEmpty:true, //是否为空白,需要请求数据
  16. showSearchBox:false
  17. };
  18. export default function(state=initState,action){
  19. let res = Object.assign({},state);
  20. switch(action.type){
  21. case SET:
  22. return set(state,action);
  23. case SETNUMBER4:
  24. return setNumberValue(state,action);
  25. case SETSELECTED4:
  26. return setRadioValue(state,action);
  27. case ADDLABELITEM:
  28. return addLabelItem(state,action);
  29. case SETCHECKTEXT:
  30. return setCheckText(state,action);
  31. case SETSEARCHDATA:
  32. return setSearchData(state,action);
  33. case SETCHECKBOX:
  34. return setCheckBoxValue(state,action);
  35. case SELECTSEARCHDATA:
  36. return insertLabelData(state,action);
  37. case CLEARCHECKBODY:
  38. return clearCheckBody(state,action);
  39. case CHANGECHECKTEXTLABEL://改变标签值
  40. return changeLabelVal(state,action);
  41. case CHECKCONFIRMSELECTED:
  42. return confirm(state,action);
  43. case CHANGECHECKTEXTLABEL_NUMBER://数字键盘
  44. return changeNumLabelVal(state,action);
  45. case CHECK_FOCUS_INDEX:
  46. res.focusIndex = action.index;
  47. res.span = action.$span;
  48. case CHECKBODY_CLEAR://失焦清空搜索值
  49. res.searchData = [];
  50. return res;
  51. case SETCHECKINPUT:
  52. return setInputLabel(state,action);
  53. case DEL_CHECKBODY:
  54. return backspaceText(state,action);
  55. case CHECKBODY_MUL:
  56. return multipleComfirn(state,action);
  57. default:
  58. return res;
  59. }
  60. }