Skip to content

Commit b9c7f6d

Browse files
committed
fixed module forRoot for optional provider parameter
1 parent 079ca52 commit b9c7f6d

File tree

2 files changed

+17
-5
lines changed

2 files changed

+17
-5
lines changed

demo/src/app/app.module.ts

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,11 @@ export function myCustomAudioProviderFactory() {
2727
}
2828

2929
export function providers() {
30-
return [{provide: ErrorHandler, useClass: IonicErrorHandler}, SplashScreen, StatusBar];
30+
return [
31+
{provide: ErrorHandler, useClass: IonicErrorHandler},
32+
SplashScreen,
33+
StatusBar
34+
];
3135
}
3236
export function entryComponents() {
3337
return pages;
@@ -41,7 +45,7 @@ export function declarations() {
4145
imports: [
4246
BrowserModule,
4347
IonicModule.forRoot(MyApp),
44-
IonicAudioModule.forRoot({ provide: AudioProvider, useFactory: myCustomAudioProviderFactory }),
48+
IonicAudioModule.forRoot(),
4549
// or use custom function above to force a specific provider
4650
// { provide: AudioProvider, useFactory: myCustomAudioProviderFactory }
4751
],

src/ionic-audio.module.ts

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import {AudioTrackComponent} from './ionic-audio-track-component';
66
import {AudioTrackProgressComponent, AudioTrackProgressBarComponent} from './ionic-audio-track-progress-component';
77
import {AudioTrackPlayComponent} from './ionic-audio-track-play-component';
88
import {AudioTimePipe} from './ionic-audio-time-pipe';
9-
import {AudioProvider, CordovaMediaProvider, WebAudioProvider} from './ionic-audio-providers';
9+
import {AudioProvider, audioProviderFactory} from './ionic-audio-providers';
1010

1111
export function declarations() {
1212
return [
@@ -15,7 +15,15 @@ export function declarations() {
1515
AudioTrackProgressBarComponent,
1616
AudioTrackPlayComponent,
1717
AudioTimePipe
18-
]
18+
];
19+
}
20+
21+
export function providers(audioProvider?: any) {
22+
audioProvider = audioProvider || { provide: AudioProvider, useFactory: audioProviderFactory }
23+
24+
return [
25+
audioProvider
26+
];
1927
}
2028

2129
@NgModule({
@@ -33,7 +41,7 @@ export class IonicAudioModule {
3341
static forRoot(audioProvider?: any): ModuleWithProviders {
3442
return {
3543
ngModule: IonicAudioModule,
36-
providers: audioProvider
44+
providers: providers(audioProvider)
3745
};
3846
}
3947
}

0 commit comments

Comments
 (0)