delete mission
This commit is contained in:
@@ -1,21 +1,25 @@
|
||||
import { useParams, Navigate } from 'react-router-dom';
|
||||
import { useParams, Navigate, useNavigate } from 'react-router-dom';
|
||||
import CodeEditor from '../views/mission/codeeditor/CodeEditor';
|
||||
import Statement from '../views/mission/statement/Statement';
|
||||
import { PrimaryButton } from '../components/button/PrimaryButton';
|
||||
import { useEffect, useRef, useState } from 'react';
|
||||
import { useAppDispatch, useAppSelector } from '../redux/hooks';
|
||||
import { fetchMySubmitsByMission, submitMission } from '../redux/slices/submit';
|
||||
import { fetchMissionById } from '../redux/slices/missions';
|
||||
import { fetchMissionById, setMissionsStatus } from '../redux/slices/missions';
|
||||
import Header from '../views/mission/statement/Header';
|
||||
import MissionSubmissions from '../views/mission/statement/MissionSubmissions';
|
||||
import { useQuery } from '../hooks/useQuery';
|
||||
|
||||
const Mission = () => {
|
||||
const dispatch = useAppDispatch();
|
||||
const navigate = useNavigate();
|
||||
|
||||
// Получаем параметры из URL
|
||||
const { missionId } = useParams<{ missionId: string }>();
|
||||
const mission = useAppSelector((state) => state.missions.currentMission);
|
||||
const missionStatus = useAppSelector(
|
||||
(state) => state.missions.statuses.fetchById,
|
||||
);
|
||||
const missionIdNumber = Number(missionId);
|
||||
|
||||
const query = useQuery();
|
||||
@@ -74,6 +78,12 @@ const Mission = () => {
|
||||
}
|
||||
};
|
||||
}, []);
|
||||
useEffect(() => {
|
||||
if (missionStatus == 'failed') {
|
||||
setMissionsStatus({ key: 'fetchById', status: 'idle' });
|
||||
navigate(back ?? '/home/missions');
|
||||
}
|
||||
}, [missionStatus]);
|
||||
|
||||
useEffect(() => {
|
||||
submissionsRef.current = submissions;
|
||||
|
||||
Reference in New Issue
Block a user