Неадекватное поведение - PullRequest
0 голосов
/ 02 июня 2018

У меня возникает следующая проблема с цепочкой обещаний

У меня есть цепочка обещаний, в которой я устанавливаю переменную с тем, что будет выполняться на основе типа данных

if (data.type === 'type1') {
       actionToExecute = action1;
       resultToExecute = result1;
       resultMsg = "result1";
   } else {
       actionToExecute = action2;
       resultToExecute = result2;
       resultMsg = "result2";
   }
   return actionToExecute(comment)
       .then(() => {
           return resultToExecute(data.id)
       })
       .then((response) => {
           ....
       }

В этом сценарии resultoToExecute - это action1

action1: (id) => {
    return (dispatch, getState) => {
      return api.fetchItems(id)
      .then((response) => {
        let action = {
          'id': id,
          'items': response
        }
        dispatch({
          type: 'UPDATE-ITEMS',
          action
        })
      })

Но, по ответу цепочки обещаний, которую я получаю вместо выполнения функции arrown, сама функция

function response

Как, todo response(), поэтому можно выполнить вызов API, и редуктор сделает то, что ожидается.

Любое представление о том, что яя делаю что-то не так?

Примечание: извините, если код расплывчатый, но я не могу много рассказать о нем, так как это код клиента

Edit1: И теперь я чувствую себя глупо

1 Ответ

0 голосов
/ 02 июня 2018

И я только что осознал свою ошибку, благодаря Феликсу Клингу я только что увидел, что действительно я не возвращаю обещание, а просто функцию

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