"use client"; import { useMemo, useState, type CSSProperties } from "react"; import Link from "next/link"; import type { Destination } from "@/lib/types"; function workLevel(speed: number) { if (speed >= 150) return { label: "极速办公", emoji: "🚀", color: "#6ee7b7", tip: "视频会议、大文件传输无压力" }; if (speed >= 80) return { label: "流畅办公", emoji: "✅", color: "#4ECDC4", tip: "日常远程工作完全够用" }; if (speed >= 40) return { label: "基本可用", emoji: "⚠️", color: "#FFE66D", tip: "建议准备热点备份" }; return { label: "需谨慎", emoji: "🐢", color: "#FF6B6B", tip: "优先选择联合办公或咖啡厅" }; } interface Props { destinations: Destination[]; } export default function WifiWorkScore({ destinations }: Props) { const [slug, setSlug] = useState(destinations[0]?.slug || ""); const dest = destinations.find((d) => d.slug === slug) || destinations[0]; const level = useMemo(() => workLevel(dest?.speed ?? 0), [dest]); const ranked = useMemo( () => [...destinations].sort((a, b) => b.speed - a.speed), [destinations] ); return (
📶 WIFI SCORE

远程办公网速评级

选城先看网——评估目的地是否适合稳定远程工作

{dest && (
{dest.speed} Mbps

{dest.emoji} {dest.name}

{level.emoji} {level.label}

{level.tip}

查看城市详情 →
)}

🏆 网速排行

    {ranked.map((d, i) => { const lv = workLevel(d.speed); return (
  • setSlug(d.slug)}> {i + 1} {d.emoji} {d.name} {d.speed} Mbps
  • ); })}
); }