我尝试编写一个简单的应用程序,该应用程序应显示使用Websockets从Firebase DB收到的项目列表。 要接收数据,我应该听一下firebase事件,如下所示:
var ref = new Firebase("firebase-url-here");
ref.on('value', function(snap) {
console.log(snap.val());
});
我的问题是 - 注册此活动的正确位置在哪里?
我读了很多关于Flux的article - 在评论部分有一个Facebook工程师的回答说接收数据将通过商店的getData方法。另一方面,在Facebook's Todolist教程中,有一个选项可以用于' handleServerAction'哪个应该处理服务器动作。我理解应该从视图和服务器调度操作的概念(作为视图操作和服务器操作)。
将从视图文件上的用户交互调度视图操作。我不明白从哪里发送服务器操作(假设我想使用' handleServerAction'方法)
答案 0 :(得分:2)
我就是这样做的(如果是Flux):你应该把你的WebSocket放到Web API模块中。创建套接字init
操作(初始化WebSocket)和push
操作(通过套接字发送数据)。使Web API模块调度数据收入操作,在存储中侦听此操作,并在获取某些数据后更新存储。然后,您可以从根组件中调度init
操作,并在需要数据的组件中侦听商店更改。您还可以在需要通过套接字发送数据时发送push
操作。