Open utterances-bot opened 4 days ago
Anh ơi. Cái này nếu mà cứ ngồi reload liên tục thì nó vẫn có thể lỗi anh ạ. Anh có thể thử nhé. Mới cả có một chỗ em thấy a đang sai chỗ truyền hàm onError để clearInterval
useEffect(() => {
if (UNAUTHENTICATED_PATH.includes(pathname)) return;
console.log("RUNNING IN COMPONENT REFRESH TOKEN");
let interval: any = null;
// Phải gọi lần đầu tiên, vì interval sẽ chạy sau thời gian TIMEOUT
checkAndRefreshToken();
// Timeout interval phải bé hơn thời gian hết hạn của access token
// Ví dụ thời gian hết hạn của access token và 10s thì 1s mình sẽ cho check 1 lần
const TIMEOUT = 1000;
interval = setInterval(
() =>
checkAndRefreshToken({
onError: () => clearInterval(interval),
}),
TIMEOUT
);
return () => {
console.log("Clean up interval");
clearInterval(interval);
};
}, [pathname]);
Anh ơi. Cái này nếu mà cứ ngồi reload liên tục thì nó vẫn có thể lỗi anh ạ. Anh có thể thử nhé. Mới cả có một chỗ em thấy a đang sai chỗ truyền hàm onError để clearInterval
useEffect(() => { if (UNAUTHENTICATED_PATH.includes(pathname)) return; console.log("RUNNING IN COMPONENT REFRESH TOKEN"); let interval: any = null; // Phải gọi lần đầu tiên, vì interval sẽ chạy sau thời gian TIMEOUT checkAndRefreshToken(); // Timeout interval phải bé hơn thời gian hết hạn của access token // Ví dụ thời gian hết hạn của access token và 10s thì 1s mình sẽ cho check 1 lần const TIMEOUT = 1000; interval = setInterval( () => checkAndRefreshToken({ onError: () => clearInterval(interval), }), TIMEOUT ); return () => { console.log("Clean up interval"); clearInterval(interval); }; }, [pathname]);
Tại sao truyền ntn lại sai em
onError: () => {
clearInterval(interval)
}
// Phải gọi lần đầu tiên, vì interval sẽ chạy sau thời gian TIMEOUT
checkAndRefreshToken();
Ở đoạn code này trong video em thấy a truyền vào hàm onError để xử lý clearInterval á. Vì bản chất lúc đó nó cũng chưa có intervalId nên việc truyền vào nó cũng không có tác dụng. Ở bài sau em thấy anh sửa đúng rồi nhé
Khu vực học tập | Được Edu
Được chỉ cung cấp các khóa học lập trình online chất lượng, nói không với khóa lởm!
https://edu.duthanhduoc.com/learn/Next.Js-Super?lessonId=524