Imagine the following medium/large App using vue 2 (With vue 3 this would be easy to answer thanks to the composition api), where we got App.vue with X amount of components:
Suppose that "Children c" and "Comp A" use the same state (or single source of truth like some people say). Having said that, we could use vuex to store the state in one place, the problem with that is that now we have a global state for some data that needs to be shared between two distant components, but to be honest I just don't know if that's a good practice.
Now if the same need appear with different states between some components, we would have to repeat the same approach, creating many globals vuex stores for some components that need to consume the same data.
Now we also have Vue 2.6 Observables, these observables does basically the same as vuex without the vuex dev tools support and is already built in in Vue 2, but there is not enough documentation about it. This is a quote from Thomas Findlay's book vue- the road to enterprise:
What do you think, is vuex really worth it in vue 2 for a medium/large application?