2024-01-19 18:32:01 +04:00

45 lines
1009 B
JavaScript

import { useState, } from 'react';
import CategoryService from "../services/CategoryService";
export function useCategories() {
const [categories, setCategories] = useState(null);
async function getCategories() {
try {
const response = await CategoryService.getAll();
setCategories(response);
} catch (error) {
console.log(error);
}
}
async function getCategoryById(id) {
try {
if (!categories || categories.length == 0) {
const response = await CategoryService.getById(id);
setCategories([response]);
return response;
}
const c = categories.find(category => category.id == id);
if (c) {
return c;
} else {
const response = await CategoryService.getById(id);
setCategories([...categories, response]);
return response;
}
} catch (error) {
console.log(error);
return {};
}
}
return {
categories,
getCategories,
getCategoryById
};
}