我们(我和我的团队)正在构建一个食品交付实时Web和移动应用程序(使用react-native),其中还包括客户端的支付集成和管理仪表板 .
我们为应用选择的技术堆栈:
View
-
React(网络应用程序)
-
React-native(移动应用)
Back-end
-
快递
-
Firebase
我们考虑使用 common back-end 为网络和移动应用分享应用数据 . 基本上,我们会创建一个提供 end-points using Express 然后 Express would Save/Retrieve data to/from Firebase 的 API . 快递将是我们的 middle-ware .
我们创建了2个项目文件夹,首先保留了所有Web应用程序:
-
react-webapp
-
express-webapp
然后,我们为包启动相应的服务器 .
Unfortunately ,API 's aren' t实时,我们可能必须实现我们的机制来实现流量 .
所以,我们切换到 merging firebase with react . 我们决定只使用express来发送电子邮件 . 因此,Web应用程序的文件夹结构类似于:
-
react-webapp
-
node_modules
-
公众
-
src
-
firebase
通过这种方法,我们创建了一个演示,我们得到 real-time updates ,我们也可以使用 ReactFireMixin . 稍后我们可以使用相同的文件夹并将其添加到react-native以及从数据库中保存/检索数据 .
我的问题是,由于我们之前没有使用通用数据库/后端和React / React-native构建Web和移动应用程序的任何经验,这种方法是否合适?无论如何,我们可以将前端代码与后端隔离并利用firebase的实时功能吗?
将后端与前端隔离的原因是为了保持响应和反应原生的通用实时后端,而无需为Web和移动应用程序保留2个单独的firebase文件夹 .
Note: 如果您想知道为什么实时,那么客户要求实时订单放置机制 .
1 回答
它可以使用socket.io with express来允许来自firebase的实时后端更新 .