Files
PetCommunity/SETUP.md
2026-06-05 17:46:51 +08:00

4.6 KiB
Raw Blame History

汪圈小程序 — 上线部署指南

前置条件

  1. 微信公众平台账号 → 注册小程序,记录 AppID
  2. 开通 微信云开发,记录 云环境 ID
  3. 安装 微信开发者工具 (1.06+)
  4. Node.js 16+

第一步:填入配置

a) project.config.json

"appid": "你的小程序 AppID"

b) miniprogram/utils/constants.ts

export const CLOUD_ENV = '你的云环境 ID'

第二步:初始化云开发数据库

在微信开发者工具 → 云开发控制台 → 数据库,新建以下集合:

集合名 权限设置 说明
users 所有用户可读,仅创建者可写 用户档案
pets 所有用户可读,仅创建者可写 宠物档案
posts 所有用户可读,仅创建者可写 帖子
likes 仅创建者可读写 点赞记录
comments 所有用户可读,仅创建者可写 评论
follows 仅创建者可读写 关注关系
messages 仅创建者可读写 私信
topics 所有用户可读,仅管理员可写 话题热度

posts 集合需要建立以下索引:

  • authorId (单字段)
  • createdAt (单字段,降序)
  • location.latitude + location.longitude (复合,附近功能)

第三步:部署云函数

在开发者工具中,右键每个云函数目录 → 上传并部署(云端安装依赖)

cloudfunctions/
  ├── login           ← 必须先部署
  ├── getPosts
  ├── createPost
  ├── getNearbyPets
  ├── likePost
  ├── updateLocation
  └── sendGreeting

第四步:配置云存储目录

云开发控制台 → 存储,无需额外配置,代码自动按以下路径上传:

  • posts/ — 帖子图片
  • avatars/ — 用户头像

建议设置存储 CDN 加速(在控制台开启)。


第五步:小程序隐私配置

在微信公众平台 → 设置 → 服务类目,选择:社交 > 同城社交

「用户隐私保护指引」 中声明以下数据使用:

  • 位置信息(附近功能)
  • 昵称、头像(展示用户身份)
  • 相机、相册(发帖上传图片)

第六步:本地调试

# 打开微信开发者工具
# 导入项目:选择 wangquan/ 目录
# 填入 AppID
# 点击「编译」

环境变量清单

位置 字段 说明
project.config.json appid 小程序 AppID
utils/constants.ts CLOUD_ENV 云环境 ID
pages/login/login.ts YOUR_PRIVACY_URL 隐私政策页面 URL
pages/login/login.ts YOUR_TERMS_URL 用户协议页面 URL

项目目录说明

wangquan/
├── miniprogram/
│   ├── app.ts/json/wxss    # 全局入口、配置、样式
│   ├── pages/
│   │   ├── feed/           # 广场(信息流 + 故事圈)
│   │   ├── nearby/         # 附近(地图 + 列表双视图)
│   │   ├── post/           # 发布动态
│   │   ├── friends/        # 汪友(关注/粉丝)
│   │   ├── profile/        # 我的(宠物档案 + 动态)
│   │   ├── login/          # 登录授权
│   │   ├── pet-detail/     # 用户/宠物详情页
│   │   └── chat/           # 私聊
│   ├── components/
│   │   └── post-card/      # 帖子卡片(广场/我的复用)
│   ├── custom-tab-bar/     # 自定义底部导航(含中间 FAB
│   ├── utils/              # api / auth / format / constants
│   └── types/              # TypeScript 类型定义
└── cloudfunctions/
    ├── login               # 登录 → 自动创建用户
    ├── getPosts            # 帖子列表(关注/附近/热门)
    ├── createPost          # 发帖(含话题统计)
    ├── getNearbyPets       # 地理围栏查询附近用户
    ├── likePost            # 原子点赞/取消
    ├── updateLocation      # 心跳更新在线位置
    └── sendGreeting        # 打招呼(含 5min 防刷)

后续扩展建议

  • 评论系统getComments + addComment 云函数,参考 getPosts 结构
  • 搜索:云开发支持 where._.all() 全文检索,或接入腾讯云搜索
  • 推送通知:微信订阅消息 (wx.requestSubscribeMessage)
  • 宠物档案编辑:新建 pages/pet-edit/ 页面,调用 updatePet 云函数
  • 性能优化:为 posts 集合开启 CDN 缓存,大流量时接入腾讯云 COS 存储