import { Button, Grid, Typography } from '@arco-design/web-react'; import { IconPlus } from '@arco-design/web-react/icon'; import { useState } from 'react'; import { useAsyncEffect } from '../../../hooks/useAsyncEffect'; import type { Project } from '../types'; import CreateProjectModal from './components/CreateProjectModal'; import ProjectCard from './components/ProjectCard'; import { projectService } from './service'; const { Text } = Typography; function ProjectPage() { const [projects, setProjects] = useState([]); const [createModalVisible, setCreateModalVisible] = useState(false); useAsyncEffect(async () => { const response = await projectService.list(); setProjects(response.data); }, []); const handleCreateProject = () => { setCreateModalVisible(true); }; const handleCreateSuccess = (newProject: Project) => { setProjects((prev) => [newProject, ...prev]); }; const handleCreateCancel = () => { setCreateModalVisible(false); }; return (
我的项目 管理和查看您的所有项目
{projects.map((project) => ( ))}
); } export default ProjectPage;