Bird
0
0

You want to create a service that is only available in a lazy-loaded feature module named FeatureModule. How should you configure the service with @Injectable?

hard🚀 Application Q8 of 15
Angular - Services and Dependency Injection
You want to create a service that is only available in a lazy-loaded feature module named FeatureModule. How should you configure the service with @Injectable?
A@Injectable({ providedIn: 'root' }) export class FeatureService {}
B@Injectable({ providedIn: FeatureModule }) export class FeatureService {}
C@Injectable({ providedIn: 'any' }) export class FeatureService {}
D@Injectable() export class FeatureService {}
Step-by-Step Solution
Solution:
  1. Step 1: Understand module-scoped service provision

    To limit service to a module, provide the module class in providedIn.
  2. Step 2: Apply to FeatureModule

    Use providedIn: FeatureModule to scope the service to that lazy-loaded module.
  3. Final Answer:

    @Injectable({ providedIn: FeatureModule }) export class FeatureService {} -> Option B
  4. Quick Check:

    Use module class in providedIn for lazy module scope [OK]
Quick Trick: Use module class in providedIn for lazy-loaded service [OK]
Common Mistakes:
MISTAKES
  • Using 'root' makes service global
  • Using 'any' creates multiple instances
  • Omitting providedIn requires manual provider

Want More Practice?

15+ quiz questions · All difficulty levels · Free

Free Signup - Practice All Questions
More Angular Quizzes