If a module defines provides and declarations then loading the module in multiple feature modules will duplicate the registration of the service. Below are the different ways to prevent this duplicate behavior.
- Use the providedIn syntax instead of registering the service in the module.
- Separate your services into their own module.
- Define forRoot() and forChild() methods in the module.