Реактивні залежності StateNotifier оголошені в його провайдері, тоді як Notifier централізує цю логіку у своєму методі збірки. Весь процес ініціалізації StateNotifier розподілений між його постачальником і його конструктором, тоді як Notifier резервує єдине місце для розміщення такої логіки.
Мета StateNotifier має бути простим рішенням для незмінного керування станом. Незважаючи на те, що ChangeNotifier простий, через його змінну природу його може бути важче підтримувати, оскільки він стає більшим. Використовуючи незмінний стан, стає набагато простіше: порівнювати попередній і новий стани.
Анотація класу StateNotifier<T>. Спостережуваний клас, який зберігає один незмінний стан. Його можна використовувати як заміну ChangeNotifier або інших еквівалентних об’єктів, таких як Bloc. Його особливість полягає в тому, що він намагається бути простим, але просуває незмінні дані.
StateProvider — це постачальник, який надає можливість змінювати свій стан. Це спрощення NotifierProvider, розроблене, щоб уникнути необхідності писати клас Notifier для дуже простих випадків використання. StateProvider існує в основному для того, щоб дозволити змінювати прості змінні за допомогою інтерфейсу користувача.
StateNotifierProvider — це постачальник, який використовується для прослуховування та надання StateNotifier (з пакету state_notifier, який Riverpod реекспортує). Зазвичай він використовується для: показ незмінного стану, який може змінюватися з часом після реакції на спеціальні події.
Система пожежної сигналізації Notifier буде виявляти та реагувати на будь-яку надзвичайну ситуацію, будь то пожежа, викиди токсичних газів або дим, надсилаючи необхідні сигнали до центрального командного центру для швидкого реагування.
StateNotifier тепер не рекомендується на користь цих нових API. На цій сторінці показано, як перейти від застарілого StateNotifier до нових API.