We are also able to see notifier object with the latest Riverpod. Notifier object works with ref.read() method. Of course inside ref.read() we need to pass a provider.
From the provider object we can notifier
The purpose of using notifier object with provider is to invoke a method of the provider and set changes.
See the code below first
Here you may see that we are calling ref.watch() and inside we are passing a provider as well. Since we are we working with ref.watch(), the purpose is to get the provider and show on the UI.
It means, directly showing the value on the UI.
What if you want to set the value from the UI, then you need to use ref.read().
Not only that, you also need to pass the provider inside ref.read() and with the object you need to call notifier object.
Look at the picture below
Here we called a setStart() method, this method is possible to call, due to notifier object. Because of notifier object, we can call any method inside our provider class and change the state object as needed. Because of notifier object our state becomes reactive.
At the same time you see that, we have ref.watch() in the last line but no notifier object.
Summary
notifier object works with ref.read() and helps calling method inside provider class and change state object.