diff --git a/app/success/page.jsx b/app/success/page.jsx new file mode 100644 index 0000000..8151b25 --- /dev/null +++ b/app/success/page.jsx @@ -0,0 +1,85 @@ +"use client"; + +import { useEffect, useState } from "react"; +import { FiArrowLeft, FiCheckCircle } from "react-icons/fi"; +import toast from "react-hot-toast"; + +export default function SuccessPage() { + const [closeAttempted, setCloseAttempted] = useState(false); + + // 页面加载时的动画效果 + useEffect(() => { + const timer = setTimeout(() => { + const successIcon = document.getElementById("success-icon"); + if (successIcon) { + successIcon.classList.add("scale-100"); + successIcon.classList.remove("scale-0"); + } + }, 100); + + return () => clearTimeout(timer); + }, []); + + // 尝试关闭页面 + const handleClose = () => { + try { + window.close(); + + // 设置一个短暂的延迟,检查页面是否仍然打开 + setTimeout(() => { + // 如果页面仍然打开,说明关闭失败 + if (document.visibilityState !== "hidden") { + setCloseAttempted(true); + // 显示toast提示 + toast.error("请手动关闭此页面并返回应用", { + icon: "👋", + duration: 5000, + style: { + background: "#333", + color: "#fff", + borderRadius: "8px", + }, + }); + } + }, 300); + } catch (error) { + console.error("关闭页面失败:", error); + setCloseAttempted(true); + toast.error("请手动关闭此页面返回应用"); + } + }; + + return ( +
+ 请关闭当前页面返回应用 +
+ + +