Fork me on GitHub
#re-frame
<
2021-01-21
>
datran05:01:06

I've got a question about the best way to chain requests in re-frame land. I'm dealing with an api that requires multiple POSTs in sequence, with each one building on the result of the previous.

datran05:01:08

Is there a good pattern for this? Manually chaining together events seems a bit fragile

datran05:01:06

to elaborate: I've got to create topic a, post message 1 to topic a, post message 2 referencing message 1 to topic b

datran05:01:47

Now, I've got a generic create-topic event handler, and a generic send-message event handler, as those are used all over the place.

datran05:01:58

And at each step I've got to hook in to the flow in a generic way to track requests, updating request status and loading spinners, etc.

datran05:01:25

So the chain of events is becoming quite long, and I worry that I'm going to have trouble figuring out how it all works in 6 months

datran05:01:40

And the thing that keeps poking me is that this can be done with ~10 lines of code with async/await style js, and I'm not sure how to translate it.

lassemaatta06:01:59

I'm not confident enough to say that this is the best way, but I remember using https://github.com/day8/re-frame-async-flow-fx to achieve something similar

datran06:01:23

thanks, I'll check that out

Schpaa23:01:38

@datran kee-frame has a rudimentary state machine which I’ve personally found very helpful in situations like you describe.