Исправление бага: при открытии списка канбан досок, не авторизованным пользователем, не происходит переадресация
This commit is contained in:
@@ -2,6 +2,7 @@ import { useState, useEffect, useRef, useCallback } from 'react';
|
|||||||
import { useNavigate } from 'react-router-dom';
|
import { useNavigate } from 'react-router-dom';
|
||||||
import axios from 'axios';
|
import axios from 'axios';
|
||||||
import Header from './Header';
|
import Header from './Header';
|
||||||
|
import './css/BoardList.css';
|
||||||
|
|
||||||
const KBBoardsList = () => {
|
const KBBoardsList = () => {
|
||||||
const navigate = useNavigate();
|
const navigate = useNavigate();
|
||||||
@@ -15,7 +16,7 @@ const KBBoardsList = () => {
|
|||||||
const [reverse, setReverse] = useState(false);
|
const [reverse, setReverse] = useState(false);
|
||||||
const [search_text, setSearchText] = useState('');
|
const [search_text, setSearchText] = useState('');
|
||||||
const [page, setPage] = useState(1);
|
const [page, setPage] = useState(1);
|
||||||
const [list, setList] = useState(20);
|
const [limit, setLimit] = useState(20);
|
||||||
|
|
||||||
const [title, setTitle] = useState('');
|
const [title, setTitle] = useState('');
|
||||||
const [description, setDescription] = useState('');
|
const [description, setDescription] = useState('');
|
||||||
@@ -43,10 +44,12 @@ const KBBoardsList = () => {
|
|||||||
|
|
||||||
const loadBoardList = useCallback(async () => {
|
const loadBoardList = useCallback(async () => {
|
||||||
clearTimeout(debounceRef.current);
|
clearTimeout(debounceRef.current);
|
||||||
try {
|
debounceRef.current = setTimeout(async () => {
|
||||||
debounceRef.current = setTimeout(async () => {
|
try {
|
||||||
var newList = { sort_method, reverse, search_text, page, list };
|
const newList = { sort_method, reverse, search_text, page, limit };
|
||||||
const response = await axios.post('/api/boards/list', newList);
|
console.log("err");
|
||||||
|
const response = await axios.post('/api/boards/list', newList, {withCredentials: true });
|
||||||
|
console.log("err1");
|
||||||
if (Array.isArray(response.data)) {
|
if (Array.isArray(response.data)) {
|
||||||
setItems(response.data);
|
setItems(response.data);
|
||||||
} else {
|
} else {
|
||||||
@@ -55,21 +58,21 @@ const KBBoardsList = () => {
|
|||||||
console.log('Доски отсутствуют');
|
console.log('Доски отсутствуют');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
setTimer(400)
|
} catch (err) {
|
||||||
}, timer);
|
if (err.response?.data?.message === 'Token Error' || err.response?.data?.message === 'Invalid Token') {
|
||||||
} catch (err) {
|
setError('Вы не авторизованы');
|
||||||
if (err.response?.data?.message === 'Token Error' || err.response?.data?.message === 'Invalid Token') {
|
setTimeout(() => {
|
||||||
setError('Вы не авторизованы');
|
navigate('/login');
|
||||||
setTimeout(() => {
|
}, 1000);
|
||||||
navigate('/login');
|
} else {
|
||||||
}, 1000);
|
setError('Ошибка загрузки досок');
|
||||||
} else {
|
console.log(err);
|
||||||
setError('Ошибка загрузки досок');
|
setItems([]);
|
||||||
console.log(err);
|
}
|
||||||
setItems([]);
|
|
||||||
}
|
}
|
||||||
}
|
setTimer(400)
|
||||||
}, [sort_method, reverse, search_text, page, list, timer, setItems, setError, navigate]);
|
}, timer);
|
||||||
|
}, [sort_method, reverse, search_text, page, limit, timer, setItems, setError, navigate]);
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
loadBoardList();
|
loadBoardList();
|
||||||
|
|||||||
Reference in New Issue
Block a user