主要更新: 1. 按H5网页端完全重构匹配功能(match页面) - 4种匹配类型: 创业合伙/资源对接/导师顾问/团队招募 - 资源对接等类型弹出手机号/微信号输入框 - 去掉重新匹配按钮,改为返回按钮 2. 修复所有卡片对齐和宽度问题 - 目录页附录卡片居中 - 首页阅读进度卡片满宽度 - 我的页面菜单卡片对齐 - 推广中心分享卡片统一宽度 3. 修复目录页图标和文字对齐 - section-icon固定40rpx宽高 - section-title与图标垂直居中 4. 更新真实完整文章标题(62篇) - 从book目录读取真实markdown文件名 - 替换之前的简化标题 5. 新增文章数据API - /api/db/chapters - 获取完整书籍结构 - 支持按ID获取单篇文章内容
44 lines
1.1 KiB
TypeScript
44 lines
1.1 KiB
TypeScript
"use client"
|
|
|
|
import { usePathname } from "next/navigation"
|
|
import { useEffect, useState } from "react"
|
|
import { BottomNav } from "@/components/bottom-nav"
|
|
import { ConfigLoader } from "@/components/config-loader"
|
|
|
|
export function LayoutWrapper({ children }: { children: React.ReactNode }) {
|
|
const pathname = usePathname()
|
|
const [mounted, setMounted] = useState(false)
|
|
const isAdmin = pathname?.startsWith("/admin")
|
|
|
|
useEffect(() => {
|
|
setMounted(true)
|
|
}, [])
|
|
|
|
// 服务端渲染时先返回通用布局
|
|
if (!mounted) {
|
|
return (
|
|
<div className="mx-auto max-w-[430px] min-h-screen bg-black shadow-2xl relative font-sans antialiased">
|
|
<ConfigLoader />
|
|
{children}
|
|
</div>
|
|
)
|
|
}
|
|
|
|
if (isAdmin) {
|
|
return (
|
|
<div className="min-h-screen bg-gray-100 text-gray-900 font-sans">
|
|
<ConfigLoader />
|
|
{children}
|
|
</div>
|
|
)
|
|
}
|
|
|
|
return (
|
|
<div className="mx-auto max-w-[430px] min-h-screen bg-black shadow-2xl relative font-sans antialiased">
|
|
<ConfigLoader />
|
|
{children}
|
|
<BottomNav />
|
|
</div>
|
|
)
|
|
}
|