No provider for Facebook (Ionic Native)

Viewed 2743

ERROR Error: No provider for Facebook!
    &nbspat injectionError (core.es5.js:1231)
    &nbspat noProviderError (core.es5.js:1269)
    &nbspat ReflectiveInjector_.throwOrNull (core.es5.js:2770)
    &nbspat ReflectiveInjector
.getByKeyDefault (core.es5.js:2809)
    &nbspat ReflectiveInjector
.getByKey (core.es5.js:2741)
    &nbspat ReflectiveInjector
.get (core.es5.js:2610)
    &nbspat AppModuleInjector.NgModuleInjector.get (core.es5.js:3578)
    &nbspat resolveDep (core.es5.js:11039)
    &nbspat createClass (core.es5.js:10903)
     at createDirectiveInstance (core.es5.js:10723)
View_MyApp_Host_0 @ MyApp_Host.html:1

2 Answers

You need to add Facebook in your AppModule (app.module.ts file):

// ...
import { Facebook } from '@ionic-native/facebook';


@NgModule({
    declarations: [...],
    imports: [...],
    bootstrap: [IonicApp],
    entryComponents: [...],
    providers: [
        // ...
        Facebook // <--- Here!
        // ...
        { provide: ErrorHandler, useClass: IonicErrorHandler }
    ]
})
export class AppModule { }

Selected answer works till Ionic3. For Ionic 4+: In whichever module has the component that uses FB login, add:

import { Facebook } from '@ionic-native/facebook/ngx';

[Note the /ngx]

and add the provider for that @NgModule

providers: [ Facebook, .... ]
Related