Сбой приложения при использовании redux-saga и socket io - PullRequest
0 голосов
/ 23 сентября 2018

У меня проблема с чатом на redux-саге и сокете io.Когда я быстро отправляю сообщение, приложение вылетает.

Мое действие

export function* createMessages(api, action) {
  try {
    const { roomId, content } = action;
    const response = yield call(api.createMessage, roomId, content);
    const { data } = response;
    if (response.ok && data.success) {
      yield put(ChatActions.createMessagesSuccess(data.result));

    } else {
      yield put(ChatActions.createMessagesFailure());
    }
  } catch (e) {
    console.tron.display({
      name: 'createMessages error',
      preview: 'expand',
      value: {
        message: e.message,
        e,
      },
    });
  }
}

Мой редуктор

export const receiveMessage = (state, { data }) => state.merge({ messages: [].concat(data, state.messages), uid: data._id });

Мой сокет

socket.on('messages', (responseData) => {
      switch (responseData.action) {
        case 'receive':
          emit(ChatDetailActions.receiveMessage(responseData.data));
          break;
        case 'typing':
          break;
        default:
          break;
      }
    });

Как я могу решить эту проблему?Благодаря.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...