В приложении должен быть один и только один источник правды. На роль такого источника очень хорошо подходят хранилища состояний, предоставляемые такими библиотеками, как redux/mobx/vuex/...
Если в приложении несколько источников правды, то раньше или позже между ними возникнет конфликт, который приведет к трудноотлаживаемым багам.
Говоря совсем простым языком, пока некое состояние модуля/компонента сугубо локально, то есть не влияет ни на что за пределами этого компонента - его можно (а зачастую и нужно) хранить локально, но при этом обязательно абсолютно соблюдать инкапсуляцию этого состояния, ибо как только оно "протекло" во вне, оно перестает быть локальным и становится общим, а там уже и до нескольких источников правды недалеко.
Хранилище состояния же решает эту проблему, становясь тем самым единственным источником правды, которому все могут доверять.