import { Card, Rate, Tag, Typography, Button } from "antd"; import { UserOutlined, ClockCircleOutlined, PlayCircleOutlined, TeamOutlined, } from "@ant-design/icons"; import { CourseDto, TaxonomySlug } from "@nice/common"; import { useNavigate } from "react-router-dom"; interface CourseCardProps { course: CourseDto; } const { Title, Text } = Typography; export default function CourseCard({ course }: CourseCardProps) { const navigate = useNavigate(); const handleClick = (course: CourseDto) => { navigate(`/course/${course.id}/detail`); }; return ( handleClick(course)} key={course.id} hoverable className="group overflow-hidden rounded-2xl border border-gray-200 bg-white shadow-xl hover:shadow-2xl transition-all duration-300 transform hover:-translate-y-2" cover={
}>
{course?.terms?.map((term) => { return ( {term.name} ); })} {/* {course.terms?.[0].name} {course.terms?.[1].name} */}
<button> {course.title}</button>
{ course?.depts.length > 1 ?`${course.depts[0].name}等`:course.depts[0].name } {/* {course?.depts?.map((dept) => {return dept.name.length > 1 ?`${dept.name.slice}等`: dept.name})} */} {/* {course?.depts?.map((dept)=>{return dept.name})} */}
{course?.meta?.views ? `观看次数 ${course?.meta?.views}` : null}
); }