1 min readDec 5, 2019
store.subscribe(...)
implements a Subscription pattern, it has the list of subscribers and loop through it calling the render for the UI components.selectWithSlipRepeats
apply a transformation function to the state and compares it with the previous state. If nothing changes the render is not called.render()
is called from `UIComponent<T> : Subscriber<T>` and every single component extends this class.- We serialize the state using kotlinx.serialization and save it to disk as a blob.
- The backstack is part of the state, it is serialized with the state serialization.
- Yes, we restore the redux state and the components re-render themselves from the last serialized state.
- For forms we could write another blog post, but a quick summary would be that every UI widget (editText, dropdowns) fire an Action to save a draft object in the state. When user taps submit we fire another Action that commits the draft.
By Juliano Moraes