react / redux-在react-redux应用程序中获取API

时间:2018-09-01 22:33:35

标签: reactjs rest api redux react-redux

我是React和Redux的新手,当时我正在检查购物车应用程序,如果要从外部api获取这些虚拟对象该怎么办。我可以在react中获取API,但是redux令我有些困惑。

productsReducer.js

const INIT_PRODUCTS = [
    {id:1, title: 'Watch', description: 'Lorem Ipsum', price: 80, img:''},
    {id:2, title: 'Watch', description: 'Lorem Ipsum', price: 50, img:''},
    {id:3, title: 'Watch', description: 'Lorem Ipsum', price: 35, img:''}
];
export default function productsReducer(state=INIT_PRODUCTS, action={}) {

    function findProductIndex(products, id) {
        return products.findIndex((p) => p.id === id)
    }

    return state;
}

1 个答案:

答案 0 :(得分:2)

使用fetch API时,您会异步执行操作(通常是异步调用服务器)。 redux不支持defualt的异步动作。 因此您需要使用称为“ thunk”或“ redux-saga”的中间件(thunk更容易) 该中间件使您能够将redux与异步操作一起使用。

如何进行重击?您创建了一个返回函数的动作创建者,而不是返回对象的acrion创建者。 然后将商店的调度功能传递给此返回的函数。这使返回的函数能够异步调用分派-作为回调

这是关于此主题的最佳指南

thunk for dummy's