|
@@ -5,27 +5,27 @@
|
|
|
{"id":"pages_user","type":"text","text":"## 用户中心\n\n**profile/** 个人主页\n- page.tsx\n- ProfileClient.tsx\n- edit/ 编辑页\n\n**settings/** 设置\n- page.tsx\n- SettingsClient.tsx\n\n**inbox/** 收件箱\n- page.tsx\n- InboxClient.tsx\n\n**messages/** 消息\n- page.tsx\n- MessagesClient.tsx\n\n**payment/** 支付\n- page.tsx\n- PaymentClient.tsx\n\n**publish/** 发布\n- page.tsx\n- PublishClient.tsx","x":0,"y":-1420,"width":280,"height":760,"color":"5"},
|
|
{"id":"pages_user","type":"text","text":"## 用户中心\n\n**profile/** 个人主页\n- page.tsx\n- ProfileClient.tsx\n- edit/ 编辑页\n\n**settings/** 设置\n- page.tsx\n- SettingsClient.tsx\n\n**inbox/** 收件箱\n- page.tsx\n- InboxClient.tsx\n\n**messages/** 消息\n- page.tsx\n- MessagesClient.tsx\n\n**payment/** 支付\n- page.tsx\n- PaymentClient.tsx\n\n**publish/** 发布\n- page.tsx\n- PublishClient.tsx","x":0,"y":-1420,"width":280,"height":760,"color":"5"},
|
|
|
{"id":"comp_ui","type":"text","text":"## 通用UI组件\n\n**CategoryNav/** 分类导航\n- index.tsx\n- SubCategoryNav.tsx\n- styles.module.css\n\n**SearchUnified/** 统一搜索\n- index.tsx\n\n**TagsList/** 标签列表\n- index.tsx\n\n**Icon.tsx** 图标\n**SvgSprite.tsx** SVG精灵\n**TopTagBadge.tsx** 顶部标签\n**RecommendedRibbon.tsx** 推荐标识\n**SnackbarProviderWrapper.tsx** 通知","x":740,"y":-600,"width":280,"height":560,"color":"4"},
|
|
{"id":"comp_ui","type":"text","text":"## 通用UI组件\n\n**CategoryNav/** 分类导航\n- index.tsx\n- SubCategoryNav.tsx\n- styles.module.css\n\n**SearchUnified/** 统一搜索\n- index.tsx\n\n**TagsList/** 标签列表\n- index.tsx\n\n**Icon.tsx** 图标\n**SvgSprite.tsx** SVG精灵\n**TopTagBadge.tsx** 顶部标签\n**RecommendedRibbon.tsx** 推荐标识\n**SnackbarProviderWrapper.tsx** 通知","x":740,"y":-600,"width":280,"height":560,"color":"4"},
|
|
|
{"id":"project_structure","type":"text","text":"## 项目结构\n\n```\nsrc/\n├── api/ # 接口层 (18模块)\n├── app/ # 页面 (48目录)\n├── components/ # 组件 (43个)\n├── contexts/ # 上下文 (1)\n├── hooks/ # 钩子 (4)\n├── i18n/ # 国际化\n├── lib/ # 工具库 (9)\n└── types/ # 类型 (17)\n```","x":-480,"y":180,"width":360,"height":360,"color":"6"},
|
|
{"id":"project_structure","type":"text","text":"## 项目结构\n\n```\nsrc/\n├── api/ # 接口层 (18模块)\n├── app/ # 页面 (48目录)\n├── components/ # 组件 (43个)\n├── contexts/ # 上下文 (1)\n├── hooks/ # 钩子 (4)\n├── i18n/ # 国际化\n├── lib/ # 工具库 (9)\n└── types/ # 类型 (17)\n```","x":-480,"y":180,"width":360,"height":360,"color":"6"},
|
|
|
- {"id":"title","type":"text","text":"# askyi-h5 架构\n\n**版本**: 1.0.0\n**描述**: 问易社区移动端Next.js应用\n**状态**: 生产环境\n\n技术栈:Next.js 15 + React 18 + TypeScript\nUI框架:Tailwind CSS\n原生支持:Capacitor 6\n\n**源文件**: 178个\n**组件**: 43个\n**API模块**: 18个","x":-2380,"y":-1590,"width":400,"height":340,"color":"6"},
|
|
|
|
|
|
|
+ {"id":"title","type":"text","text":"# askyi-h5 架构\n\n**版本**: 1.0.0\n**描述**: 问易社区移动端Next.js应用\n**状态**: 生产环境\n\n技术栈:Next.js 15 + React 18 + TypeScript\nUI框架:Tailwind CSS\n原生支持:Capacitor 6\n\n**源文件**: 178个\n**组件**: 43个\n**API模块**: 18个","x":-2380,"y":-1590,"width":400,"height":340,"color":"1"},
|
|
|
{"id":"pages_auth","type":"text","text":"## 认证模块\n\n**login/** 登录页\n- page.tsx\n- LoginClient.tsx\n\n**register/** 注册页\n- page.tsx\n\n**forgot-password/** 忘记密码\n- page.tsx\n\n**onboarding/** 引导页\n- page.tsx","x":-1580,"y":0,"width":280,"height":420,"color":"3"},
|
|
{"id":"pages_auth","type":"text","text":"## 认证模块\n\n**login/** 登录页\n- page.tsx\n- LoginClient.tsx\n\n**register/** 注册页\n- page.tsx\n\n**forgot-password/** 忘记密码\n- page.tsx\n\n**onboarding/** 引导页\n- page.tsx","x":-1580,"y":0,"width":280,"height":420,"color":"3"},
|
|
|
{"id":"i18n","type":"text","text":"## 国际化 (i18n)\n\n**语言支持**\n- 🇨🇳 zh 中文\n- 🇺🇸 en 英文\n\n**实现**\n- next-intl 4.4\n- messages/ 翻译文件\n- 动态切换支持","x":-1580,"y":640,"width":280,"height":320,"color":"5"},
|
|
{"id":"i18n","type":"text","text":"## 国际化 (i18n)\n\n**语言支持**\n- 🇨🇳 zh 中文\n- 🇺🇸 en 英文\n\n**实现**\n- next-intl 4.4\n- messages/ 翻译文件\n- 动态切换支持","x":-1580,"y":640,"width":280,"height":320,"color":"5"},
|
|
|
{"id":"types_component","type":"text","text":"## 类型定义 (component/)\n\n- video.ts 视频组件\n- profile.ts 个人资料\n- rating.ts 评分\n- serviceList.ts 服务列表\n\n**通用类型**\n- strapi.ts Strapi响应\n- auth.ts 认证类型","x":-2100,"y":420,"width":280,"height":320,"color":"4"},
|
|
{"id":"types_component","type":"text","text":"## 类型定义 (component/)\n\n- video.ts 视频组件\n- profile.ts 个人资料\n- rating.ts 评分\n- serviceList.ts 服务列表\n\n**通用类型**\n- strapi.ts Strapi响应\n- auth.ts 认证类型","x":-2100,"y":420,"width":280,"height":320,"color":"4"},
|
|
|
{"id":"pages_video","type":"text","text":"## 视频模块\n\n**video_feed/** 视频流\n- page.tsx\n- VideoFeedClient.tsx\n\n**video_player/** 视频播放\n- page.tsx\n- PlayerClient.tsx\n\n**live_stream/** 直播\n- page.tsx\n- LiveClient.tsx","x":0,"y":-1920,"width":280,"height":400,"color":"1"},
|
|
{"id":"pages_video","type":"text","text":"## 视频模块\n\n**video_feed/** 视频流\n- page.tsx\n- VideoFeedClient.tsx\n\n**video_player/** 视频播放\n- page.tsx\n- PlayerClient.tsx\n\n**live_stream/** 直播\n- page.tsx\n- LiveClient.tsx","x":0,"y":-1920,"width":280,"height":400,"color":"1"},
|
|
|
{"id":"pages_content","type":"text","text":"## 内容详情\n\n**article/** 文章详情\n- page.tsx\n- ArticleClient.tsx\n\n**article-direct/** 直接访问\n- page.tsx\n\n**articles/[...slug]/** 动态路由\n- page.tsx\n\n**fengshui_detail/** 风水详情\n- page.tsx\n\n**qa_details/** 问答详情\n- page.tsx","x":-1760,"y":-1685,"width":280,"height":530,"color":"3"},
|
|
{"id":"pages_content","type":"text","text":"## 内容详情\n\n**article/** 文章详情\n- page.tsx\n- ArticleClient.tsx\n\n**article-direct/** 直接访问\n- page.tsx\n\n**articles/[...slug]/** 动态路由\n- page.tsx\n\n**fengshui_detail/** 风水详情\n- page.tsx\n\n**qa_details/** 问答详情\n- page.tsx","x":-1760,"y":-1685,"width":280,"height":530,"color":"3"},
|
|
|
- {"id":"backend","type":"text","text":"## 后端 API\n\n**askyi-cms-railway**\nStrapi 5 + PostgreSQL + Redis\n\n**API 地址**\n- 开发: localhost:1337\n- 生产: Railway\n\n**主要端点**\n- /api/articles\n- /api/videos\n- /api/experts\n- /api/users\n- /api/auth\n- /api/reactions\n- /api/follow-*","x":2220,"y":1120,"width":280,"height":480,"color":"4"},
|
|
|
|
|
|
|
+ {"id":"backend","type":"text","text":"## 后端 API\n\n**askyi-cms-railway**\nStrapi 5 + PostgreSQL + Redis\n\n**API 地址**\n- 开发: localhost:1337\n- 生产: Railway\n\n**主要端点**\n- /api/articles\n- /api/videos\n- /api/experts\n- /api/users\n- /api/auth\n- /api/reactions\n- /api/follow-*","x":2220,"y":1120,"width":280,"height":480,"color":"6"},
|
|
|
{"id":"env_config","type":"text","text":"## 环境配置\n\n**环境文件**\n- .env 默认配置\n- .env.local 本地开发\n- .env.staging 预发布\n- .env.example 配置模板\n\n**关键变量**\n- NEXT_PUBLIC_CMS_API_BASE\n- NEXT_PUBLIC_SITE_URL\n\n**构建命令**\n- dev / dev:turbo\n- dev:staging\n- build / start","x":750,"y":1100,"width":380,"height":520,"color":"2"},
|
|
{"id":"env_config","type":"text","text":"## 环境配置\n\n**环境文件**\n- .env 默认配置\n- .env.local 本地开发\n- .env.staging 预发布\n- .env.example 配置模板\n\n**关键变量**\n- NEXT_PUBLIC_CMS_API_BASE\n- NEXT_PUBLIC_SITE_URL\n\n**构建命令**\n- dev / dev:turbo\n- dev:staging\n- build / start","x":750,"y":1100,"width":380,"height":520,"color":"2"},
|
|
|
{"id":"tech_stack","type":"text","text":"## 技术栈\n\n- **前端框架**: Next.js 15.5\n- **UI库**: React 18.2\n- **语言**: TypeScript 5\n- **样式**: Tailwind CSS 3.4\n- **原生**: Capacitor 6.1\n- **HTTP**: Axios 1.11\n- **国际化**: next-intl 4.4\n- **视频**: hls.js 1.6\n- **Markdown**: react-markdown + MDX\n- **AI**: @google/generative-ai\n- **推送**: Firebase 10.13","x":750,"y":630,"width":380,"height":400,"color":"4"},
|
|
{"id":"tech_stack","type":"text","text":"## 技术栈\n\n- **前端框架**: Next.js 15.5\n- **UI库**: React 18.2\n- **语言**: TypeScript 5\n- **样式**: Tailwind CSS 3.4\n- **原生**: Capacitor 6.1\n- **HTTP**: Axios 1.11\n- **国际化**: next-intl 4.4\n- **视频**: hls.js 1.6\n- **Markdown**: react-markdown + MDX\n- **AI**: @google/generative-ai\n- **推送**: Firebase 10.13","x":750,"y":630,"width":380,"height":400,"color":"4"},
|
|
|
{"id":"deploy","type":"text","text":"## 部署配置\n\n**Railway**\n- railway.json 配置\n- .railwayignore 忽略\n\n**Jenkins CI/CD**\n- Jenkinsfile 流水线\n- jenkins/ 配置目录\n\n**脚本**\n- build-complete.sh\n- deploy.sh\n\n**PM2**\n- ecosystem.config.cjs\n- start.js","x":360,"y":1560,"width":280,"height":520,"color":"1"},
|
|
{"id":"deploy","type":"text","text":"## 部署配置\n\n**Railway**\n- railway.json 配置\n- .railwayignore 忽略\n\n**Jenkins CI/CD**\n- Jenkinsfile 流水线\n- jenkins/ 配置目录\n\n**脚本**\n- build-complete.sh\n- deploy.sh\n\n**PM2**\n- ecosystem.config.cjs\n- start.js","x":360,"y":1560,"width":280,"height":520,"color":"1"},
|
|
|
{"id":"lib_layer","type":"text","text":"## Lib 工具库\n\n**HTTP客户端**\n- axios.ts Axios封装\n - 请求拦截器 (Token注入)\n - 响应拦截器 (错误处理)\n - 401自动登出\n\n**Strapi 接口**\n- strapi.ts CMS工具\n - 图片URL处理\n - 数据格式化\n\n**认证工具**\n- auth-utils.ts\n - Token读取\n - 登录状态\n\n**国际化**\n- i18n-utils.ts\n- locale.ts\n\n**业务工具**\n- platform.ts 平台检测\n- reaction-utils.ts 反应工具\n- recommend-sort.ts 推荐排序\n- slugify.ts URL处理","x":1680,"y":975,"width":300,"height":770,"color":"2"},
|
|
{"id":"lib_layer","type":"text","text":"## Lib 工具库\n\n**HTTP客户端**\n- axios.ts Axios封装\n - 请求拦截器 (Token注入)\n - 响应拦截器 (错误处理)\n - 401自动登出\n\n**Strapi 接口**\n- strapi.ts CMS工具\n - 图片URL处理\n - 数据格式化\n\n**认证工具**\n- auth-utils.ts\n - Token读取\n - 登录状态\n\n**国际化**\n- i18n-utils.ts\n- locale.ts\n\n**业务工具**\n- platform.ts 平台检测\n- reaction-utils.ts 反应工具\n- recommend-sort.ts 推荐排序\n- slugify.ts URL处理","x":1680,"y":975,"width":300,"height":770,"color":"2"},
|
|
|
{"id":"comp_content","type":"text","text":"## 内容组件\n\n**ArticleCard/** 文章卡片\n- index.tsx\n\n**ArticleItem/** 文章项\n- index.tsx\n\n**DiscoverTab.tsx** 发现Tab\n**DiscoveryContent.tsx** 发现内容\n**FollowingTab/** 关注Tab\n**CasesTab/** 案例Tab\n\n**DualColumnWaterfall.tsx** 双列瀑布流\n**InfiniteScrollList.tsx** 无限滚动\n**HomePage.tsx** 首页组件\n**HomeRecommendations.tsx** 首页推荐","x":1200,"y":250,"width":280,"height":540,"color":"3"},
|
|
{"id":"comp_content","type":"text","text":"## 内容组件\n\n**ArticleCard/** 文章卡片\n- index.tsx\n\n**ArticleItem/** 文章项\n- index.tsx\n\n**DiscoverTab.tsx** 发现Tab\n**DiscoveryContent.tsx** 发现内容\n**FollowingTab/** 关注Tab\n**CasesTab/** 案例Tab\n\n**DualColumnWaterfall.tsx** 双列瀑布流\n**InfiniteScrollList.tsx** 无限滚动\n**HomePage.tsx** 首页组件\n**HomeRecommendations.tsx** 首页推荐","x":1200,"y":250,"width":280,"height":540,"color":"3"},
|
|
|
{"id":"static","type":"text","text":"## 静态资源\n\n**public/**\n- css/ 样式文件\n- images/ 图片\n- icons/ 图标\n\n**design/**\n- 设计资源\n\n**docs/**\n- 文档 (45个)\n\n**markdown/**\n- MDX内容","x":1200,"y":-270,"width":280,"height":460,"color":"3"},
|
|
{"id":"static","type":"text","text":"## 静态资源\n\n**public/**\n- css/ 样式文件\n- images/ 图片\n- icons/ 图标\n\n**design/**\n- 设计资源\n\n**docs/**\n- 文档 (45个)\n\n**markdown/**\n- MDX内容","x":1200,"y":-270,"width":280,"height":460,"color":"3"},
|
|
|
- {"id":"api_detail","type":"text","text":"## API 详细\n\n**article/**\n- index.ts API函数\n- types.ts 类型定义\n- article.http 测试\n\n**auth/**\n- index.ts 登录/注册\n- types.ts 认证类型\n\n**reaction/**\n- index.ts 点赞/收藏\n- types.ts 反应类型\n\n**following/**\n- index.ts 关注操作\n- types.ts 关注类型\n\n**recommands/**\n- index.ts 推荐算法\n- types.ts 推荐类型\n\n**video/**\n- index.ts 视频接口\n- types.ts 视频类型","x":1630,"y":-1180,"width":300,"height":740,"color":"1"},
|
|
|
|
|
|
|
+ {"id":"api_detail","type":"text","text":"## API 详细\n\n**article/**\n- index.ts API函数\n- types.ts 类型定义\n- article.http 测试\n\n**auth/**\n- index.ts 登录/注册\n- types.ts 认证类型\n\n**reaction/**\n- index.ts 点赞/收藏\n- types.ts 反应类型\n\n**following/**\n- index.ts 关注操作\n- types.ts 关注类型\n\n**recommands/**\n- index.ts 推荐算法\n- types.ts 推荐类型\n\n**video/**\n- index.ts 视频接口\n- types.ts 视频类型","x":1630,"y":-1180,"width":300,"height":740,"color":"6"},
|
|
|
{"id":"comp_interactive","type":"text","text":"## 交互组件\n\n**FollowButton/** 关注按钮\n- index.tsx\n\n**FollowAccountButton/** 关注账号\n- index.tsx\n\n**ReactionButton/** 反应按钮\n- index.tsx\n\n**ConsultButton.tsx** 咨询按钮\n\n**LanguageSwitcher/** 语言切换\n- index.tsx\n- LanguageSwitcher.module.css\n\n**Loading/** 加载组件\n- index.tsx\n- Loading.module.css\n\n**WhatsAppButton/** WhatsApp\n- index.tsx","x":1650,"y":-2040,"width":280,"height":700,"color":"5"},
|
|
{"id":"comp_interactive","type":"text","text":"## 交互组件\n\n**FollowButton/** 关注按钮\n- index.tsx\n\n**FollowAccountButton/** 关注账号\n- index.tsx\n\n**ReactionButton/** 反应按钮\n- index.tsx\n\n**ConsultButton.tsx** 咨询按钮\n\n**LanguageSwitcher/** 语言切换\n- index.tsx\n- LanguageSwitcher.module.css\n\n**Loading/** 加载组件\n- index.tsx\n- Loading.module.css\n\n**WhatsAppButton/** WhatsApp\n- index.tsx","x":1650,"y":-2040,"width":280,"height":700,"color":"5"},
|
|
|
{"id":"hooks","type":"text","text":"## Hooks 钩子函数\n\n- **useFollow** 关注专家\n- **useFollowAccount** 关注账号\n- **useInfiniteScroll** 无限滚动\n- **useReaction** 点赞/收藏","x":2200,"y":-1800,"width":280,"height":220,"color":"5"},
|
|
{"id":"hooks","type":"text","text":"## Hooks 钩子函数\n\n- **useFollow** 关注专家\n- **useFollowAccount** 关注账号\n- **useInfiniteScroll** 无限滚动\n- **useReaction** 点赞/收藏","x":2200,"y":-1800,"width":280,"height":220,"color":"5"},
|
|
|
{"id":"types_module","type":"text","text":"## 类型定义 (module/)\n\n**内容类型**\n- article.ts 文章\n- answer.ts 回答\n- comment.ts 评论\n- review.ts 评价\n\n**用户类型**\n- user.ts 用户\n- expert.ts 专家\n- authIdentity.ts 认证\n\n**业务类型**\n- booking.ts 预约\n- subscription.ts 订阅\n- message.ts 消息\n\n**分类类型**\n- category.ts 分类\n- tag.ts 标签","x":2340,"y":-1120,"width":280,"height":620,"color":"4"},
|
|
{"id":"types_module","type":"text","text":"## 类型定义 (module/)\n\n**内容类型**\n- article.ts 文章\n- answer.ts 回答\n- comment.ts 评论\n- review.ts 评价\n\n**用户类型**\n- user.ts 用户\n- expert.ts 专家\n- authIdentity.ts 认证\n\n**业务类型**\n- booking.ts 预约\n- subscription.ts 订阅\n- message.ts 消息\n\n**分类类型**\n- category.ts 分类\n- tag.ts 标签","x":2340,"y":-1120,"width":280,"height":620,"color":"4"},
|
|
|
{"id":"comp_media","type":"text","text":"## 媒体组件\n\n**ImageUploader/** 图片上传\n- index.tsx\n\n**ImageCropper/** 图片裁剪\n- index.tsx\n\n**MediaUploader/** 媒体上传\n- index.tsx\n\n**VideoUploader/** 视频上传\n- index.tsx\n\n**VideoPlayer.tsx** 视频播放器\n**SingleVideoPlayer/** 单视频播放\n**VideoDrawer/** 视频抽屉\n**VideoCloseButton/** 关闭按钮","x":740,"y":-1230,"width":280,"height":560,"color":"1"},
|
|
{"id":"comp_media","type":"text","text":"## 媒体组件\n\n**ImageUploader/** 图片上传\n- index.tsx\n\n**ImageCropper/** 图片裁剪\n- index.tsx\n\n**MediaUploader/** 媒体上传\n- index.tsx\n\n**VideoUploader/** 视频上传\n- index.tsx\n\n**VideoPlayer.tsx** 视频播放器\n**SingleVideoPlayer/** 单视频播放\n**VideoDrawer/** 视频抽屉\n**VideoCloseButton/** 关闭按钮","x":740,"y":-1230,"width":280,"height":560,"color":"1"},
|
|
|
{"id":"contexts","type":"text","text":"## Contexts 上下文\n\n**VideoDrawerContext**\n- 视频抽屉状态管理\n- 打开/关闭控制\n- 当前视频信息","x":1240,"y":-1065,"width":280,"height":230,"color":"5"},
|
|
{"id":"contexts","type":"text","text":"## Contexts 上下文\n\n**VideoDrawerContext**\n- 视频抽屉状态管理\n- 打开/关闭控制\n- 当前视频信息","x":1240,"y":-1065,"width":280,"height":230,"color":"5"},
|
|
|
{"id":"comp_explore","type":"text","text":"## Explore 组件\n\n**Explore/**\n- CategoryTabs.tsx 分类标签\n- ContentCard.tsx 内容卡片\n- ContentGrid.tsx 内容网格\n- DesktopSidebar.tsx 桌面侧边栏\n- DesktopTopBar.tsx 桌面顶栏\n- ExploreHeader.tsx 探索头部\n- Settings.tsx 设置\n- Explore.module.css 样式","x":740,"y":70,"width":280,"height":360,"color":"3"},
|
|
{"id":"comp_explore","type":"text","text":"## Explore 组件\n\n**Explore/**\n- CategoryTabs.tsx 分类标签\n- ContentCard.tsx 内容卡片\n- ContentGrid.tsx 内容网格\n- DesktopSidebar.tsx 桌面侧边栏\n- DesktopTopBar.tsx 桌面顶栏\n- ExploreHeader.tsx 探索头部\n- Settings.tsx 设置\n- Explore.module.css 样式","x":740,"y":70,"width":280,"height":360,"color":"3"},
|
|
|
- {"id":"api_layer","type":"text","text":"## API 接口层\n\n| 模块 | 功能 |\n|------|------|\n| article | 文章 |\n| auth | 认证 |\n| booking | 预约 |\n| category | 分类 |\n| expert | 专家 |\n| following | 关注 |\n| menu | 菜单 |\n| otp | 验证码 |\n| preview | 预览 |\n| reaction | 点赞收藏 |\n| recommands | 推荐 |\n| tag | 标签 |\n| upload | 上传 |\n| user | 用户 |\n| usercase | 案例 |\n| utils | 工具 |\n| video | 视频 |","x":1680,"y":200,"width":300,"height":640,"color":"1"},
|
|
|
|
|
|
|
+ {"id":"api_layer","type":"text","text":"## API 接口层\n\n| 模块 | 功能 |\n|------|------|\n| article | 文章 |\n| auth | 认证 |\n| booking | 预约 |\n| category | 分类 |\n| expert | 专家 |\n| following | 关注 |\n| menu | 菜单 |\n| otp | 验证码 |\n| preview | 预览 |\n| reaction | 点赞收藏 |\n| recommands | 推荐 |\n| tag | 标签 |\n| upload | 上传 |\n| user | 用户 |\n| usercase | 案例 |\n| utils | 工具 |\n| video | 视频 |","x":1680,"y":200,"width":300,"height":640,"color":"6"},
|
|
|
{"id":"pages_home","type":"text","text":"## 首页/发现\n\n**home/** 首页\n- page.tsx\n- HomeClient.tsx\n- SubNav/index.tsx\n\n**explore/** 发现页\n- page.tsx\n\n**hot/** 热门\n- page.tsx\n- HotClient.tsx\n\n**following/** 关注\n- page.tsx\n- FollowingClient.tsx\n\n**search/** 搜索\n- page.tsx\n\n**search_result/** 搜索结果\n- page.tsx\n- SearchClient.tsx","x":-1340,"y":-1920,"width":280,"height":700,"color":"3"},
|
|
{"id":"pages_home","type":"text","text":"## 首页/发现\n\n**home/** 首页\n- page.tsx\n- HomeClient.tsx\n- SubNav/index.tsx\n\n**explore/** 发现页\n- page.tsx\n\n**hot/** 热门\n- page.tsx\n- HotClient.tsx\n\n**following/** 关注\n- page.tsx\n- FollowingClient.tsx\n\n**search/** 搜索\n- page.tsx\n\n**search_result/** 搜索结果\n- page.tsx\n- SearchClient.tsx","x":-1340,"y":-1920,"width":280,"height":700,"color":"3"},
|
|
|
{"id":"comp_layout","type":"text","text":"## 布局组件\n\n**AppLayout/** 应用布局\n- index.tsx\n- AppLayout.module.css\n\n**BackHeader/** 返回头部\n- index.tsx\n- BackHeader.module.css\n\n**BottomNavbar/** 底部导航\n- index.tsx\n- BottomNavbar.module.css\n\n**MainNavigation/** 主导航\n- index.tsx\n- MainNavigation.module.css\n\n**TopHeader/** 顶部头\n- index.tsx\n- TopHeader.module.css\n\n**TopHotHeader/** 热门头部\n- index.tsx\n- TopHotHeader.module.css","x":-800,"y":-1950,"width":280,"height":760,"color":"3"},
|
|
{"id":"comp_layout","type":"text","text":"## 布局组件\n\n**AppLayout/** 应用布局\n- index.tsx\n- AppLayout.module.css\n\n**BackHeader/** 返回头部\n- index.tsx\n- BackHeader.module.css\n\n**BottomNavbar/** 底部导航\n- index.tsx\n- BottomNavbar.module.css\n\n**MainNavigation/** 主导航\n- index.tsx\n- MainNavigation.module.css\n\n**TopHeader/** 顶部头\n- index.tsx\n- TopHeader.module.css\n\n**TopHotHeader/** 热门头部\n- index.tsx\n- TopHotHeader.module.css","x":-800,"y":-1950,"width":280,"height":760,"color":"3"},
|
|
|
{"id":"capacitor","type":"text","text":"## Capacitor 原生\n\n**版本**: 6.1.2\n\n**平台**\n- iOS (ios/)\n- Android (待添加)\n\n**配置**\n- capacitor.config.ts\n\n**构建命令**\n- build:ios\n- build:android\n- cap:sync\n- cap:open","x":-1340,"y":-970,"width":280,"height":460,"color":"1"},
|
|
{"id":"capacitor","type":"text","text":"## Capacitor 原生\n\n**版本**: 6.1.2\n\n**平台**\n- iOS (ios/)\n- Android (待添加)\n\n**配置**\n- capacitor.config.ts\n\n**构建命令**\n- build:ios\n- build:android\n- cap:sync\n- cap:open","x":-1340,"y":-970,"width":280,"height":460,"color":"1"},
|