Global mutable state is difficult to handle correctly and Rust forces you to think through the consequences. There's no shortage of patterns for safely working with it, but you can't take the easy (and unsafe!) way out.
Not really, there’s two models that work. The react model and the immediate model. The whole class inherits widget hellscape is not, no loss there. That route inevitably leads to bugs that are hard to find and fix because of all the weird state buried in inherited types.