该项目是使用 React Native、Expo、TypeScript、Firebase 和 Redux 构建的 TikTok 克隆。该实现以SimCoder 的 TikTok 克隆教程为基础,进行了重构以合并 TypeScript,并更新为利用 Firebase v10 和 Redux Toolkit。
- 验证
- 使用相机或图库发布视频
- 用户资料
- 查看用户帖子
- 关注/取消关注
- 查看用户统计信息(关注/关注/喜欢)
- 喂养
- 探索其他用户的帖子
- 对帖子点赞/评论
- 直接向用户发送消息
- 用户通过电子邮件搜索
Firebase 用于数据/文件存储和身份验证。首先,请使用本教程设置您自己的 Firebase 项目。
接下来,您需要更新两个配置文件以指向新的 Firebase 项目:
- 更新 中的项目 ID(位于 Firebase 项目设置中)
backend/.firebaserc。 - 更新 .firebaseConfig(位于您的应用下的 Firebase 项目设置中)
frontend/firebaseConfig.ts。
全局安装 Firebase CLI 工具,以便能够从本地计算机管理和部署 Firebase 服务。
npm install -g firebase-tools
接下来,使用 Firebase 验证您的帐户并获得必要的权限。
firebase login
进入该backend\functions目录并安装所需的依赖项。
npm install
运行以下命令部署项目中包含的 Firebase 函数,以便它们在 Firebase 服务器上执行。
firebase deploy
进入该frontend目录并安装所需的依赖项。
npm install
要启动该应用程序,请运行以下命令。
npm run start
这将启动 Expo 开发服务器。要查看该应用程序,您需要 iOS 或 Android 模拟器。如果您不熟悉设置模拟器,可以按照本教程的开头部分获取有关配置 Android 模拟器的指导。观看本教程以设置 iOS 模拟器。
第一次运行项目时,您会遇到以下与Firestore相关的错误:
@firebase/firestore: Firestore (10.3.0): Uncaught Error in snapshot listener: FirebaseError: [code=failed-precondition]: The query requires an index. You can create it here:
出现此错误的原因是 Firestore 需要为您正在运行的查询创建专用索引,但该索引尚不存在。如果没有此索引,Firestore 就无法高效执行查询。
要解决此问题,您需要点击错误消息中提供的链接,然后单击“保存”以创建所需的索引。这样做将根据您的特定查询需求优化 Firestore,确保平稳高效的操作。
有很多功能需要添加,所以这就是我下一步要做的工作。如果您有兴趣,请随时贡献。
- 能够重新加载个人资料/提要/聊天屏幕
- 能够通过消息传递分享帖子
- 为您提要页面与关注提要页面

