diff --git a/src/compenents/tree-category/index.tsx b/src/compenents/tree-category/index.tsx index 3c63c21..278a6b7 100644 --- a/src/compenents/tree-category/index.tsx +++ b/src/compenents/tree-category/index.tsx @@ -18,17 +18,26 @@ export const TreeCategory = (props: PropInterface) => { setLoading(true); resourceCategory.resourceCategoryList().then((res: any) => { const categories = res.data.categories; - const new_arr: Option[] = [ - { - key: "", - title: "全部", - children: checkArr(categories, 0), - }, - ]; - setTreeData(new_arr); - setTimeout(() => { - setLoading(false); - }, 1000); + if (JSON.stringify(categories) !== "{}") { + const new_arr: Option[] = [ + { + key: "", + title: "全部", + children: checkArr(categories, 0), + }, + ]; + setTreeData(new_arr); + } else { + const new_arr: Option[] = [ + { + key: "", + title: "全部", + children: [], + }, + ]; + setTreeData(new_arr); + } + setLoading(false); }); }, []); diff --git a/src/compenents/upload-image-button/index.tsx b/src/compenents/upload-image-button/index.tsx index af52c7c..f4e78a6 100644 --- a/src/compenents/upload-image-button/index.tsx +++ b/src/compenents/upload-image-button/index.tsx @@ -14,12 +14,12 @@ import styles from "./index.module.less"; import { CreateResourceCategory } from "../create-rs-category"; import { CloseOutlined } from "@ant-design/icons"; import { UploadImageSub } from "./upload-image-sub"; +import { TreeCategory } from "../../compenents"; -interface CategoryItem { - id: number; - type: string; +interface Option { + id: string | number; name: string; - sort: number; + children?: Option[]; } interface ImageItem { @@ -41,16 +41,7 @@ interface PropsInterface { export const UploadImageButton = (props: PropsInterface) => { const [showModal, setShowModal] = useState(false); - const [categories, setCategories] = useState([ - { - id: 0, - type: "IMAGE", - name: "默认分类", - sort: 0, - }, - ]); - const [defaultCid, setDefaultCid] = useState(0); - const [refreshCategories, setRefreshCategories] = useState(1); + const [category_ids, setCategoryIds] = useState([]); const [imageList, setImageList] = useState([]); const [refresh, setRefresh] = useState(false); @@ -58,27 +49,11 @@ export const UploadImageButton = (props: PropsInterface) => { const [size, setSize] = useState(12); const [total, setTotal] = useState(0); - // 获取图片资源的分类 - const getCategories = () => { - resourceCategory.resourceCategoryList().then((res: any) => { - let data = res.data.data; - if (data.length > 0) { - setCategories([...categories, ...res.data.data]); - } - }); - }; - // 删除资源分类 - const removeCategory = (id: number) => { - resourceCategory.destroyResourceCategory(id).then(() => { - message.success("删除成功"); - setRefreshCategories(refreshCategories + 1); - }); - }; - // 获取图片列表 const getImageList = () => { + let categoryIds = category_ids.join(","); resource - .resourceList(page, size, "", "", "", "IMAGE", defaultCid + "") + .resourceList(page, size, "", "", "", "IMAGE", categoryIds) .then((res: any) => { setTotal(res.data.result.total); setImageList(res.data.result.data); @@ -94,15 +69,10 @@ export const UploadImageButton = (props: PropsInterface) => { setRefresh(!refresh); }; - // 初始化加载数据 - useEffect(() => { - getCategories(); - }, [refreshCategories]); - // 加载图片列表 useEffect(() => { getImageList(); - }, [defaultCid, refresh, page, size]); + }, [category_ids, refresh, page, size]); return ( <> @@ -127,52 +97,10 @@ export const UploadImageButton = (props: PropsInterface) => { > - <> -
-
图片分类
-
- { - setRefreshCategories(refreshCategories + 1); - }} - > -
-
- {categories.length === 0 && ( - - )} - - {categories.map((item) => ( -
{ - setDefaultCid(item.id); - }} - > -
{item.name}
-
-
-
- ))} - + setCategoryIds(keys)} /> - +