Как использовать «.then ()» с this.props - PullRequest
1 голос
/ 18 марта 2020

У меня есть функция Handle Submit, когда мы нажимаем кнопку, появляется форма обновления API. Время ожидания API загрузчика отображается в этот период. но когда я пытаюсь этот код, появляется ошибка

TypeError: "_this.props.setDeviceInfoAction (...). then" не является функцией

Вот Функция Handlesubmit:

handleSubmit = (e) => {
   e.preventDefault();
   this.props.form.validateFieldsAndScroll((err, values) => {
     if (!err) {
       this.props.setDevicEtherConfigAction(values).then(() => {
         this.props.showLoaderAction();
       });
     }
   });
}

//********************* Action**************************//
export const setDeviceInfoAction = (values) => {
  return {
    type: SET_DEVICE_INFO,
    payload: {
      values
    }
  };
};

//********************* Sagas**************************//
function* setDeviceInfo({ payload }) {
  try {
    const data = yield call(setDeviceInfoRequest, payload.values);
    if (data === 200) {
      yield put(showAlertAction(...........................));
    } else {
      yield put(showAlertAction(...........................));
    }
  } catch (error) {}
}

export function* setDeviceInfoFork() {
  yield takeEvery(SET_DEVICE_INFO, setDeviceInfo);
}

//***********************Service*******************************//
export const setDeviceInfoRequest = async (payload) => {
  let request = ..........................
  var AuthToken = .........................
  return new Promise(function (resolve, reject) {
    client........(request, {'x-authorization': AuthToken}, (err, response) => {
      var status = 200
      if (response === null) {
        resolve(false);
      } else {
        resolve(status);
      }
    });
  })
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...