Bird
0
0

Which syntax correctly registers multiple providers using the multi-provider pattern in Angular?

easy📝 Syntax Q12 of 15
Angular - Advanced Patterns
Which syntax correctly registers multiple providers using the multi-provider pattern in Angular?
Aproviders: [{ provide: TOKEN, useClass: ServiceA }, { provide: TOKEN, useClass: ServiceB }]
Bproviders: [{ provide: TOKEN, useClass: ServiceA, multi: true }, { provide: TOKEN, useClass: ServiceB, multi: true }]
Cproviders: [{ provide: TOKEN, useClass: ServiceA, multi: false }, { provide: TOKEN, useClass: ServiceB, multi: false }]
Dproviders: [{ provide: TOKEN, useClass: ServiceA, multi: 'yes' }, { provide: TOKEN, useClass: ServiceB, multi: 'yes' }]
Step-by-Step Solution
Solution:
  1. Step 1: Identify correct multi-provider syntax

    To register multiple providers under one token, each provider must have multi: true set.
  2. Step 2: Check options for correct usage

    Only providers: [{ provide: TOKEN, useClass: ServiceA, multi: true }, { provide: TOKEN, useClass: ServiceB, multi: true }] sets multi: true for both providers. providers: [{ provide: TOKEN, useClass: ServiceA }, { provide: TOKEN, useClass: ServiceB }] misses multi, options with multi: false or invalid strings like 'yes' do not work.
  3. Final Answer:

    providers: [{ provide: TOKEN, useClass: ServiceA, multi: true }, { provide: TOKEN, useClass: ServiceB, multi: true }] -> Option B
  4. Quick Check:

    multi: true enables multi-provider registration [OK]
Quick Trick: Always set multi: true for multi-provider registration [OK]
Common Mistakes:
  • Omitting multi: true causes only last provider to register
  • Setting multi: false disables multi-provider behavior
  • Using string instead of boolean for multi

Want More Practice?

15+ quiz questions · All difficulty levels · Free

Free Signup - Practice All Questions
More Angular Quizzes