ufutx_love_mp/README.md
2026-08-18 16:41:43 +08:00

6.0 KiB
Raw Permalink Blame History

福恋小程序ufutx.love.mp.v2

基于 WePY 2.x 的微信小程序项目,对应线上小程序 福恋love.ufutx.com

  • 项目名:ufutx_fulllink
  • 版本:v5.6.5(见 src/app.wpyglobalData.versions
  • AppIDwxe486777f4379507e
  • 框架WePY 2.x类 Vue 语法,编译为微信小程序原生代码)
  • 仓库目录:/Users/d/fulllink-project/ufutx.love.mp.v2

一、技术栈

分类 选型
小程序框架 WePY 2.x@wepy/core ^2.1.0
状态管理 @wepy/xVuex 风格,见 src/store/index.js
异步化 @wepy/use-promisifywx API Promise 化)
UI 样式 ColorUIsrc/coloruiwxss+ Less@wepy/compiler-less
构建 @wepy/cli / wepy build
即时通讯 网易云信 nim-web-sdk-ngIM 聊天,见 src/utils/im.js
电子卡 / 实人认证 内置 src/mp_ecard_sdkeID 相关协议页)
国际化 src/i18n(中文 zh / 英文 en
工具库 dayjsminiprogram-slide-view、四电极报告库 @yolanda-qn/four-electrodes-report-lib-pe

二、目录结构

ufutx.love.mp.v2/
├── src/                      # 源码开发目录WePY 工程)
│   ├── app.wpy               # 小程序入口(全局样式/生命周期/页面注册)
│   ├── config.js             # 接口域名配置(线上/本地环境切换)
│   ├── colorui/              # ColorUI 样式库icon/main/animation.wxss
│   ├── common/               # 公共模块eventHub 事件总线)
│   ├── components/           # 公共组件27 个 .wpy
│   │   ├── chatEmojiFile/    # 聊天表情
│   │   ├── uploadPic(s)/uploadVideo(V2)/   # 图片/视频上传
│   │   ├── wepy-image-cropper.wpy          # 图片裁剪
│   │   ├── loginDialog / recommendDialog / residenceDialog ...
│   │   └── ...
│   ├── i18n/                 # 国际化zh.js / en.js
│   ├── images/               # 图片资源tabBar 图标、icon 等)
│   ├── mixins/               # 混入https 请求封装、base、阿里云上传 SDK
│   ├── mp_ecard_sdk/         # 电子卡 / eID 实人认证 SDK 及协议页
│   ├── pages/                # 业务页面tabBar + 分包)
│   ├── store/                # 全局状态Vuex 风格)
│   ├── styles/               # 全局 Less 样式
│   └── utils/                # 工具util / dateTimeFormat / comment / im
├── weapp/                    # 编译产物(微信开发者工具直接导入此目录)
├── node_modules/             # 依赖(已安装)
├── package.json
├── project.config.json       # 微信项目配置miniprogramRoot: weapp/
├── wepy.config.js
└── .eslintrc.js / .prettierrc

页面与分包(src/app.wpy

  • tabBar 主包welcome / home / dynamic / news / user
  • 分包 pages/dynamic:动态详情、热门话题、发布、话题搜索、投票详情
  • 分包 pages/home:动态信息流、择偶要求、优质单身、报名、搜索条件/用户、单身广场
  • 分包 pages/news:私聊、群聊、好友请求、访客、系统消息、审核等
  • 分包 pages/users:实名/学历认证、未婚证明、VIP 升级、黑名单、设置、关于等
  • 分包 pages/books:书籍详情、学校认证

三、环境准备

⚠️ Node 版本要求package.jsonengines 限定 node >=14 <17。 本机当前为 Node v22,与 WePY 2.x 工具链不兼容,请先切到 Node 14~16(推荐用 nvm

nvm install 16
nvm use 16
  1. 安装依赖(如 node_modules 缺失或需重装):

    npm install
    
  2. 配置接口域名(编辑 src/config.js

    // 线上环境(默认)
    host = 'https://love.ufutx.com/go/api'
    // 本地联调时取消注释:
    // host = 'http://love.ufutx.net/go/api'
    

四、本地开发 / 构建

# 开发模式:监听改动并实时编译到 weapp/
npm run dev

# 生产构建(关闭缓存)
npm run build

# 代码检查 / 自动修复
npm run lint
npm run lint:fix

# 清理编译产物
npm run clean

在微信开发者工具中运行

  1. 打开微信开发者工具 → 导入项目
  2. 目录选择本项目的 weapp/ 文件夹(project.config.json 已设 miniprogramRoot: "weapp/"
  3. 填入 AppIDwxe486777f4379507e
  4. 确保已执行过 npm run devnpm run buildweapp/ 内有编译产物

上传 / 预览(需安装 wx-tools

npm run preview    # 预览
npm run deploy     # 上传,版本号取 package.json version

五、关键模块说明

  • 登录态src/app.wpy onLaunch 调用 appLogin()IM 实例在 src/utils/im.js 通过 NIM.getInstance 初始化(网易云信 appkey 已内置)。
  • 网络请求:封装于 src/mixins/https.js,统一走 src/config.jsservice 接口地址。
  • 电子卡 / 实人认证src/mp_ecard_sdk 含 eID 相关协议页与逻辑,被主包以页面形式注册。
  • 国际化src/i18n/modules/zh.jsen.js,通过 src/i18n/index.js 注入。
  • Git 分支约定:仓库内历史提交多为功能/审核修复(如 iOS 购买 VIP、扫码地址、强制登录限制等

六、常见问题

  • 编译报 Node 版本错误 → 切到 Node 16nvm use 16)。
  • 开发者工具提示找不到页面 → 确认先执行 npm run dev/build,且工具导入的是 weapp/ 而非 src/
  • 接口 404 / 无法登录 → 检查 src/config.js 中的 host 是否为当前环境域名。
  • IM 连不上 → 确认 src/utils/im.js 中 appkey / lbsUrls / linkUrl 与网易云信后台一致。

七、License

MIT — Author: mamba <dengzhifeng_63@163.com>