forked from purpleio/purple-admin-ui
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path[id].tsx
More file actions
29 lines (22 loc) · 982 Bytes
/
[id].tsx
File metadata and controls
29 lines (22 loc) · 982 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import { useProduct } from "@/client/sample/product";
import { getDefaultLayout, IDefaultLayoutPage, IPageHeader } from "@/components/layout/default-layout";
import ProductForm from "@/components/page/sample/product/product-form";
import { Alert, Skeleton } from "antd";
import { useRouter } from "next/router";
const pageHeader: IPageHeader = {
title: "상품수정",
};
const ProductEditPage: IDefaultLayoutPage = () => {
const router = useRouter();
const { data, error, isLoading, isValidating } = useProduct(router.query.id as string);
if (error) {
return <Alert message="데이터 로딩 중 오류가 발생했습니다." type="warning" className="my-5" />;
}
if (!data || isLoading || isValidating) {
return <Skeleton className="my-5" />;
}
return <ProductForm id={router.query.id as string} initialValues={data.data} />;
};
ProductEditPage.getLayout = getDefaultLayout;
ProductEditPage.pageHeader = pageHeader;
export default ProductEditPage;