是否可以在Immer的Produce()中设置状态?

时间:2019-03-09 03:13:35

标签: reactjs immutability

现在

await this.setState(produce(this.state, (draft) => {
    draft.item.is_loading = true;
}));
this.setState(await produce(this.state, async (draft) => {
    // is_loading is true now.
    const name = await get_name();
    draft.item.name = name;
    draft.item.is_loading = false;
}));

预期

this.setState(await produce(this.state, async (draft) => {
    let name;

    draft.item.is_loading = true;

    // set state here first.

    name = await get_name();
    draft.item.name = name;
    draft.item.is_loading = false;
}));

我想在调用produce()的过程中设置状态。可能吗?如果有什么好主意,请告诉我。谢谢。 :D

那是因为我认为将两个块连接在一起更具可读性。特别是当我可以重用前者中声明的变量时。它看起来很琐碎,但是源代码变得越复杂,对我来说就越不自然。

0 个答案:

没有答案