2016-06-28 7 views
1

私のレキシックスアプリでウェブソケットを使い、接続オブジェクト(フェニックスチャンネル)の保存に問題があります。Reduxにwebsocket(channels)接続オブジェクトを保存

私はアイテムを追加したり削除したりすることができる動的なコレクションを持っています。ユーザーが項目を追加するとき、アプリケーションは接続に基づいて新しいphoenixチャンネルを作成する必要があります(例えば、ユーザーが項目を削除したときにチャンネルにleave()メソッドを呼び出さなければならないなど)残念ながら、reduxのストアはすべて不変なので、これを処理するオプションはありません。どんな助けもありがとう。

答えて

1

間違いなく店頭に置いてください。 http://redux.js.org/docs/FAQ.html#organizing-state-non-serializableを指定すると、シリアル化可能なデータのみがストアに格納されます。永続的な接続オブジェクトのようなものを置くための標準的な場所は、ミドルウェア内部です。そして、実際には、そのアプローチを示す文字通り数十もの既存のミドルウェアがあり、それらのほとんどはhttps://github.com/markerikson/redux-ecosystem-links/blob/master/middleware.md#sockets-and-adaptersにリストされています。あなたはそれらのいくつかを例として使用できるはずです。

関連する問題