Sounds like you found a great solution. Just mentioning that you can populate states on load as well in case you have a list or not a crazy amount of different data types.

Works great for forms etc. as well.
E.g If you’re pulling a bunch of data based on answers, you can put the data into states As you go, instead of doing one big search at the end when saving to db.