Browse Source

保存后,重置测量状态

master
zhangjiming 4 months ago
parent
commit
6476e38bee
  1. 8
      src/pages/MeasureSave.tsx
  2. 7
      src/store/features/measureSlice.ts

8
src/pages/MeasureSave.tsx

@ -2,15 +2,17 @@ import { NavBar, Picker, Toast } from 'antd-mobile';
import { useNavigate } from 'react-router'; import { useNavigate } from 'react-router';
import icon_arr_r from '../assets/icon_arr_s_r.svg'; import icon_arr_r from '../assets/icon_arr_s_r.svg';
import { ChangeEvent, useState } from 'react'; import { ChangeEvent, useState } from 'react';
import { useAppSelector } from '../utils/hooks';
import { useAppDispatch, useAppSelector } from '../utils/hooks';
import { XB_CODES } from '../utils/constant'; import { XB_CODES } from '../utils/constant';
import { selectLabeledKtjOrgs } from '../store/features/baseData'; import { selectLabeledKtjOrgs } from '../store/features/baseData';
import { textsOfKeys } from '../utils/helper'; import { textsOfKeys } from '../utils/helper';
import { SaveMeasureDTO } from '../services/apiTypes'; import { SaveMeasureDTO } from '../services/apiTypes';
import Bridge from '../utils/bridge'; import Bridge from '../utils/bridge';
import { resetState } from '../store/features/measureSlice';
export default function MeasureSave() { export default function MeasureSave() {
const navigate = useNavigate(); const navigate = useNavigate();
const dispatch = useAppDispatch();
const back = () => navigate(-1); const back = () => navigate(-1);
const contextState = useAppSelector((state) => state.context); const contextState = useAppSelector((state) => state.context);
@ -43,6 +45,10 @@ export default function MeasureSave() {
Bridge.saveMeasure(dto).then((res) => { Bridge.saveMeasure(dto).then((res) => {
if (res.success) { if (res.success) {
Toast.show('保存成功'); Toast.show('保存成功');
setTimeout(() => {
navigate(-1);
dispatch(resetState());
}, 300);
} else { } else {
Toast.show(res.message); Toast.show(res.message);
} }

7
src/store/features/measureSlice.ts

@ -65,8 +65,13 @@ export const measureSlice = createSlice({
state.leftPoints.push(action.payload); state.leftPoints.push(action.payload);
} }
}, },
resetState: (state) => {
state.taskState = undefined;
state.leftPoints = [];
state.rightPoints = [];
},
}, },
}); });
export const { updateTaskState, addNewPoint } = measureSlice.actions;
export const { updateTaskState, addNewPoint, resetState } = measureSlice.actions;
export default measureSlice.reducer; export default measureSlice.reducer;
Loading…
Cancel
Save