Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import { faqServie } from "@/shared/api";
- import { removeToken } from "@/shared/lib";
- import { useQuery } from "@tanstack/react-query";
- import { App } from "antd";
- import axios from "axios";
- import { useEffect } from "react";
- import { useNavigate } from "react-router-dom";
- export const useGetFaqItem = (id: string) => {
- const { notification } = App.useApp();
- const navigate = useNavigate();
- const faqItem = useQuery({
- queryKey: ["faq", id],
- queryFn: () => faqServie.getFaqItem(id),
- });
- useEffect(() => {
- if (faqItem.isError) {
- if (faqItem.error) {
- if (axios.isAxiosError(faqItem.error)) {
- notification.error({
- message: faqItem.error.message,
- });
- if (faqItem.error.response && faqItem.error.response.status === 401) {
- navigate("/sign-in");
- }
- if (faqItem.error.response && faqItem.error.response.status === 400) {
- navigate("/faq");
- }
- } else {
- notification.error({
- message: faqItem.error.message
- ? faqItem.error.message
- : "Что то пошло не так!",
- });
- removeToken();
- navigate("/sign-in");
- console.log("Faq Item Error", faqItem.error);
- }
- }
- }
- }, [faqItem, navigate, notification]);
- return { faqItem };
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement