Я пытаюсь реализовать экран "обновить пароль". У меня есть две функции вызова службы: первая - проверка пароля, который возвращает логическое значение, а вторая - обновление пароля. Условие состоит в том, что если первый ответ службы верен, то я хочу вызвать вторую службу. Проблема состоит в том, что когда я пытаюсь получить первый ответ на вызов службы до вызова второго вызова службы, эти службы выполняются параллельно после завершения функции отправки. Таким образом, они не выполняются подряд.
Я пытался вызывать эти веб-сервисы один за другим в разных функциях метода рендеринга, в то же время я добавил условие для проверки первого ответа веб-сервиса. Если я получаю от него данные ответа, я вызываю вторую функцию, которая вызывает второй веб-сервис.
render()
{
... // screen render method
..
<Button onPress={() => { this.submit(); }}>Change Password</Button>
}
//Here is the submit function:
submit() {
//first service call
this.props.validatePassword(param1, param2, param3, param4);
//reducer writes its value to "validatePass" in mapStateToProps
if (validatePass) { //boolean check
//second service call
this.props.updateStrongPassword(param1, param2, param3,
param4);
}
}
///
const mapStateToProps = function (state) {
const result = {
strongPasswordData: state.UpdateInformationReducer.strongPasswordData,
validatePass: state.UpdateInformationReducer.validatePass,
};
return result;
};
function bindAction(dispatch) {
return {
updateStrongPassword: (param1, param2, param3, param4) => dispatch(updateStrongPassword(param1, param2, param3, param4)),
validatePassword: (param1, param2, param3, param4) => dispatch(validatePassword(param1, param2, param3, param4)),
};
}
Эти сервисные вызовы выполняются успешно, но не подряд.
Там нет ошибки вообще.
Заранее большое спасибо.