私はソケットベースのreact(redux)アプリケーションを実装しようとしています。レデューサーがそれに応じるように、ソケットイベントをストアにディスパッチする必要があります。 は、今私が考える方法は、一つのファイルに保存しておくと、Socketイベントファイルからのものを参照すると、ソケットメッセージが受信されるたびに、その後store.jsにsocket.dispatchReact ReduxアプリケーションでWebソケットを使用するためにミドルウェアが必要です
を経由して格納するためのイベントを発している
import { createStore } from 'redux';
let store = createStore(appStore);
export default store
SocketJsで
同じ店がプロバイダに小道具として渡されたメインファイルの広告に使用されている
import store from './store';
import io from socketio.client;
let Socket = {
createSocketIoConnection = function(){
var socket = io(url, {reconnection: false, transports: ['websocket']});
socket.on('data', this.emitToStore);
},
emitToStore: function(data){
store.dispatch();
}
}
ファイル
import store from './store';
<Provider store={store}>
<App> ...
</Provider>
ここではミドルウェアを使用していません。これは正しいアプローチです。
うまく見えますが、建築上の決定には1つの答えがありません。 – gravityplanx