ViewModel cannot be injected, but it can be put in a Controller that can be shared by multiple Views. It can also be passed around manually/by value. If you want to inject a ViewModel I think you can just let it inherit
Injectable
and it should work with scopes out of the box. This needs to be tested but if it doesn't work I'm pretty sure it's just a line or two to make it so.