запустить действие через 3 секунды сразу после того, как в саге было запущено первое действие - PullRequest
1 голос
/ 05 августа 2020
//Login Auth
function* userLogin({ payload }) {
  try {
    };
  } catch (err) {
    console.log(err);
    yield put(actions.userLoginFailed(err))
  }
}

У меня есть эта функция саги, которая меняет состояние, когда пользователь не может войти в систему. Я хочу сбросить состояние через 3 секунды после вызова actions.userLoginFailed. Я попытался запустить функцию снова, например,

//Login Auth
function* userLogin({ payload }) {
  try {
  } catch (err) {
    console.log(err);
    yield put(actions.userLoginFailed(err)).then(setTimeout() => {
       yield put(actions.userLoginFailed(err), 3000)
    })
  }
}

Однако это не сработало, и я думаю, что этот код не является «лучшей практикой». Есть ли что-нибудь лучше, чтобы сбросить состояние к предыдущему состоянию через 3 секунды?

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