|
|
@@ -1,5 +1,5 @@
|
|
|
import { Variables } from './router_io.ts';
|
|
|
-import type { QuizContent, Answer } from '../client/mobile/components/Exam/types.ts';
|
|
|
+import type { QuizContent, QuizState, Answer } from '../client/mobile/components/Exam/types.ts';
|
|
|
|
|
|
interface ExamRoomData {
|
|
|
roomId: string;
|
|
|
@@ -143,13 +143,18 @@ export function setupExamEvents({ socket, apiClient }: Variables) {
|
|
|
// TODO: 需要Redis服务端配置自动过期或通过其他方式实现TTL
|
|
|
|
|
|
// 广播题目到房间
|
|
|
- socket.to(roomId).emit('exam:question', {
|
|
|
- roomId,
|
|
|
- question: {
|
|
|
- ...question,
|
|
|
- timestamp: new Date().toISOString()
|
|
|
- }
|
|
|
- });
|
|
|
+ // socket.to(roomId).emit('exam:question', {
|
|
|
+ // roomId,
|
|
|
+ // question: {
|
|
|
+ // ...question,
|
|
|
+ // timestamp: new Date().toISOString()
|
|
|
+ // }
|
|
|
+ // });
|
|
|
+ const quizState:QuizState = {
|
|
|
+ date: question.date,
|
|
|
+ price: question.price
|
|
|
+ }
|
|
|
+ socket.to(roomId).emit('exam:question', quizState);
|
|
|
|
|
|
console.log(`用户 ${user.username} 在房间 ${roomId} 推送题目`);
|
|
|
} catch (error) {
|