# AGENTS.md ## 项目概述 微信小程序开发模板,基于Taro框架。 ## 技术栈 - **框架**: Taro 4.1.11 (基于 React) - **语言**: TypeScript 5.9.3 - **UI 框架**: React 18.3.1 - **构建工具**: Webpack 5.105.4 - **包管理器**: pnpm ## 项目结构 ``` taro-template/ ├── src/ # 源代码目录 │ ├── app.ts # 应用入口组件 │ ├── app.config.ts # 应用全局配置 │ ├── app.css # 全局样式 │ ├── index.html # HTML 模板(用于 H5) │ ├── components/ # 公共组件 │ │ └── BottomNav/ # 底部导航组件 │ ├── pages/ # 页面组件 │ │ ├── index/ # 首页 │ │ │ ├── index.tsx # 首页组件 │ │ │ ├── index.config.ts │ │ │ └── index.css │ │ ├── mine/ # 我的页面 │ │ │ ├── index.tsx │ │ │ ├── index.config.ts │ │ │ └── index.css │ │ └── xhs/ # 小红书平台特定工具 │ │ └── utils/ │ │ └── is-xhs.ts ├── config/ # 构建配置 ├── types/ # TypeScript 类型定义 ├── project.xhs.json # 小红书 IDE 配置 ├── project.config.json # 微信 IDE 配置 ├── project.tt.json # 字节跳动 IDE 配置 ├── tsconfig.json # TypeScript 配置 ├── babel.config.js # Babel 配置 ├── kevisual.json # Kevisual 平台配置 └── package.json # 项目依赖 ``` ## 开发指南 ## 配置文件说明 ### app.config.ts 全局应用配置,包括页面注册、导航栏等。 ### app.ts 应用入口组件,包含 `useLaunch` 生命周期钩子,用于应用初始化。在微信环境下会自动调用 `Taro.login`。 ## AI 代理注意事项 1. 修改平台特定代码时,使用环境检测确保跨平台兼容性 2. 避免使用浏览器专用 API,应使用 Taro 提供的统一 API 3. 遵循现有的代码风格和目录结构 4. 添加新依赖时,确保与所有目标平台兼容 5. 项目使用 pnpm 作为包管理器 ## 避免 1. 不能使用 `?.` 和 `??` 操作符, 因为不支持 2. 不能使用 TextDecoder 和 TextEncoder, 因为不支持 3. 不能使用 Buffer, 因为不支持