@databowl/ngx-facebook
    TypeScript icon, indicating that this package has built-in type declarations

    2.5.0 • Public • Published

    ngx-facebook

    This is a wrapper for the official Facebook JavaScript SDK. It makes it easier to use Facebook SDK with Angular 2+ by providing components, providers and types.



    npm CircleCI Sauce Test Status npm npm

    Sauce Test Status



    Installation

    1. Install via NPM:

    npm i --save ngx-facebook

    2. Add the Facebook JavaScript SDK to your index.html

    <script type="text/javascript" src="https://connect.facebook.net/en_US/sdk.js"></script>

    3. Import FacebookModule into your app's root module

     
    import { FacebookModule } from 'ngx-facebook';
     
    @NgModule({
      ...
      imports[
        FacebookModule.forRoot()
      ],
      ...
    })
    export class AppModule { }
     

    If you only want to use FacebookService only, without using the other components, then you can import it in your app's module instead of FacebookModule.

    4. Inject FacebookService and call the init method (optional):

    This method must be called before using login or api methods. It is not required for other methods/components.

    import { FacebookService, InitParams } from 'ngx-facebook';
     
    ...
     
    export class MyComponentOrService {
     
      constructor(private fb: FacebookService) {
     
        let initParams: InitParams = {
          appId: '1234566778',
          xfbml: true,
          version: 'v2.8'
        };
     
        fb.init(initParams);
     
      }
     
    }



    Documentation

    You can view complete and detailed documentation by visiting https://zyra.github.io/ngx-facebook/.



    Example Usage

    You can view our example project here and/or view its source code here



    Example of login with Facebook

    import { FacebookService, LoginResponse } from 'ngx-facebook';
     
    @Component(...)
    export class MyComponent {
     
      constructor(private fb: FacebookService) { }
     
      loginWithFacebook(): void {
     
        this.fb.login()
          .then((response: LoginResponse) => console.log(response))
          .catch((error: any) => console.error(error));
     
      }
     
    }



    Example of sharing on Facebook

    import { FacebookService, UIParams, UIResponse } from 'ngx-facebook';
     
    ...
     
    share(urlstring) {
     
      let params: UIParams = {
        href: 'https://github.com/zyra/ngx-facebook',
        method: 'share'
      };
     
      this.fb.ui(params)
        .then((res: UIResponse) => console.log(res))
        .catch((e: any) => console.error(e));
     
    }



    Example of adding a Facebook like button

    <fb-like href="https://github.com/zyra/ngx-facebook"></fb-like>



    Example of playing a Facebook video

    Basic video component usage:

    <fb-video href="https://www.facebook.com/facebook/videos/10153231379946729/"></fb-video>

    Advanced video component usage:

    <fb-video href="https://www.facebook.com/facebook/videos/10153231379946729/" (paused)="onVideoPaused($event)"></fb-video>
    import { Component, ViewChild } from '@angular/core';
    import { FBVideoComponent } from 'ngx-facebook';
     
    @Component(...)
    export class MyComponent {
     
      @ViewChild(FBVideoComponent) video: FBVideoComponent;
     
      ngAfterViewInit() {
        this.video.play();
        this.video.pause();
        this.video.getVolume();
      }
     
      onVideoPaused(ev: any) {
        console.log('User paused the video');
      }
     
    }



    Contribution

    • Having an issue? or looking for support? Open an issue and we will get you the help you need.
    • Got a new feature or a bug fix? Fork the repo, make your changes, and submit a pull request.

    Support this project

    If you find this project useful, please star the repo to let people know that it's reliable. Also, share it with friends and colleagues that might find this useful as well. Thank you 😄

    Install

    npm i @databowl/ngx-facebook

    DownloadsWeekly Downloads

    1

    Version

    2.5.0

    License

    MIT

    Last publish

    Collaborators

    • pmill
    • tpryor
    • hasan-db