0

使用 Redux Promise 中间件,我们编写如下操作:

export const withdraw=(id)=>{
    return{
        type: WITHDRAW,
        payload: (new PaypalContract()).withdraw(id),
        id
    }
}

不幸的是,redux-promise-middleware 不会在任何“WITHDRAW_PENDING”、“WIT​​HDRAW_FULFILLED”或“WITHDRAW_REJECT”中传递“id”。它只将有效负载中的承诺传递给动作减速器。

在真实环境中,我们有很多项要更新,每个项都有一个 id 来标识,那么我怎么知道要更新哪个项呢?我们必须使用 'id' 来更新指定的项目,但是如何使用 Redux Promise 中间件呢?

4

1 回答 1

1

Redux Promise 中间件遵循“Flux 标准操作”(FSA)规范。

您可以使用该meta属性在操作中包含其他数据:

export const withdraw = (id) => {
    return {
        type: WITHDRAW,
        payload: (new PaypalContract()).withdraw(id),
        meta: { id } 
    }
}
于 2020-10-27T12:46:43.403 回答