feat: 实现日历课程点击跳转到直播间功能
- 添加日历课程详情弹窗的点击跳转功能 - 公共课直播间和课程直播间支持URL参数自动选中课程 - 优化岗位详情页面样式,复用简洁卡片样式 - 为岗位详情标题添加图标 - 调整不同类型课程的跳转逻辑 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
import { useState } from "react";
|
||||
import { useState, useEffect } from "react";
|
||||
import { useSearchParams } from "react-router-dom";
|
||||
import CoursesVideoPlayer from "@/components/CoursesVideoPlayer";
|
||||
import PublicCourseList from "@/components/PublicCourseList";
|
||||
import { mockData } from "@/data/mockData";
|
||||
@@ -7,6 +8,25 @@ import "./index.css";
|
||||
const PublicCourses = () => {
|
||||
// 默认不选中任何课程,显示黑屏状态
|
||||
const [selectedCourse, setSelectedCourse] = useState(null);
|
||||
const [searchParams] = useSearchParams();
|
||||
|
||||
// 检查URL参数,如果有courseId则自动打开对应课程
|
||||
useEffect(() => {
|
||||
const courseId = searchParams.get('courseId');
|
||||
const courseTitle = searchParams.get('courseTitle');
|
||||
|
||||
if (courseId || courseTitle) {
|
||||
// 查找对应的课程
|
||||
const publicCourses = mockData.publicCourses || [];
|
||||
const targetCourse = publicCourses.find(course =>
|
||||
course.id === courseId || course.title === courseTitle
|
||||
);
|
||||
|
||||
if (targetCourse) {
|
||||
setSelectedCourse(targetCourse);
|
||||
}
|
||||
}
|
||||
}, [searchParams]);
|
||||
|
||||
const handleCourseClick = (course) => {
|
||||
setSelectedCourse(course);
|
||||
|
||||
Reference in New Issue
Block a user