|
@@ -1,35 +1,12 @@
|
|
import React, { useState, useEffect } from "react";
|
|
import React, { useState, useEffect } from "react";
|
|
import styles from "./index.module.scss";
|
|
import styles from "./index.module.scss";
|
|
import { useNavigate } from "react-router-dom";
|
|
import { useNavigate } from "react-router-dom";
|
|
-import { getRankList, RankItem, RankDescItem, saveScore } from "../../../utils/API";
|
|
|
|
|
|
+import { getRankList, RankDescItem, saveScore } from "../../../utils/API";
|
|
interface ResultProps {
|
|
interface ResultProps {
|
|
timeLeft: number;
|
|
timeLeft: number;
|
|
rightCount: number;
|
|
rightCount: number;
|
|
}
|
|
}
|
|
|
|
|
|
-// 对数据进行排序
|
|
|
|
-const getRankDesc = (rankList: RankItem[], rightCount: number, exhauseTime: number) => {
|
|
|
|
- const rankArr: RankDescItem[] = rankList.map(item => {
|
|
|
|
- return { score: item.score, time: item.time, rank: -1, isCurrentUser: false }
|
|
|
|
- })
|
|
|
|
- rankArr.push({ score: rightCount, time: exhauseTime, rank: -1, isCurrentUser: true })
|
|
|
|
- rankArr.sort((a, b) => {
|
|
|
|
- if (a.score !== b.score) {
|
|
|
|
- // 得分不同时,得分高的排在前面
|
|
|
|
- return b.score - a.score;
|
|
|
|
- } else {
|
|
|
|
- // 得分相同时,花费时间少的排在前面
|
|
|
|
- return a.time - b.time;
|
|
|
|
- }
|
|
|
|
- });
|
|
|
|
- // 为排序后的数据添加排名信息
|
|
|
|
- rankArr.forEach((item, index) => {
|
|
|
|
- item.rank = index + 1;
|
|
|
|
- });
|
|
|
|
-
|
|
|
|
- return rankArr
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
const Result = ({ timeLeft, rightCount }: ResultProps) => {
|
|
const Result = ({ timeLeft, rightCount }: ResultProps) => {
|
|
const navigate = useNavigate()
|
|
const navigate = useNavigate()
|
|
const [nickname, setNickname] = useState("")
|
|
const [nickname, setNickname] = useState("")
|