Как использовать приставку, чтобы получить только значение без управления состоянием

Я использую метод диспетчеризации избыточности, чтобы сделать побочные эффекты, а затем вернуть значение. Я не заинтересован в управлении государством в этом случае. Как я могу вернуть значение из функции отправки?

Мой код в компоненте:

useEffect(() => {
    try {
        const a = dispatch(
            expensesActions.getExpenseList()
        )
        console.log("return value", a)
    } catch (err) {
        setError(err.message)
    }
  }, [dispatch]);

Я пытаюсь использовать для возвращаемого значения, но на console.log это то, что я получаю:

Promise {
  "_40": 0,
  "_55": null,
  "_65": 0,
  "_72": null,
}

И мой очень простой код в моих действиях:

export const getExpenseList = () => {
    return async (dispatch, getState) => {
        return "HELLO"
    }
}

Я хочу вернуть значение "HELLO", куда я его отправляю, возможно ли это?

Всего 1 ответ


Отправка асинхронная, поэтому вы регистрируетесь в консоли, прежде чем получите ответ. Можешь попробовать:

dispatch(
    expensesActions.getExpenseList()
).then(result => {
    // do stuff
    console.log(result)
})

или же

console.log(dispatch(expensesActions.getExpenseList()))

Есть идеи?

10000