I'm not sure if this was a serious comment, but that sounds like a massive amount of performance overhead.
A way to optimize that approach substantially, while keeping everything else mostly the same, would be to have a setter on the global object, and only re-render the root component when that setter has updated the state.
My suggestion is not a very optimal approach, but probably a lot better than the continuous state loop.