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 i --save ng2-facebook-sdk
<script type="text/javascript" src="https://connect.facebook.net/en_US/sdk.js"></script>
import { FacebookModule } from 'ng2-facebook-sdk';
@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
.
This method must be called before using login
or api
methods. It is not required for other methods/components.
import { FacebookService, InitParams } from 'ng2-facebook-sdk';
...
export class MyComponentOrService {
constructor(private fb: FacebookService) {
let initParams: InitParams = {
appId: '1234566778',
xfbml: true,
version: 'v2.8'
};
fb.init(initParams);
}
}
You can view complete and detailed documentation by visiting https://zyramedia.github.io/ng2-facebook-sdk/.
You can view our example project here and/or view its source code here
import { FacebookService, LoginResponse } from 'ng2-facebook-sdk';
@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));
}
}
import { FacebookService, UIParams, UIResponse } from 'ng2-facebook-sdk';
...
share(url: string) {
let params: UIParams = {
href: 'https://github.com/zyramedia/ng2-facebook-sdk',
method: 'share'
};
this.fb.ui(params)
.then((res: UIResponse) => console.log(res))
.catch((e: any) => console.error(e));
}
<fb-like href="https://github.com/zyramedia/ng2-facebook-sdk"></fb-like>
<fb-video href="https://www.facebook.com/facebook/videos/10153231379946729/"></fb-video>
<fb-video href="https://www.facebook.com/facebook/videos/10153231379946729/" (paused)="onVideoPaused($event)"></fb-video>
import { Component, ViewChild } from '@angular/core';
import { FBVideoComponent } from 'ng2-facebook-sdk';
@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');
}
}
A large portion of this module's documentation is copied from the official Facebook Docs. This is to make sure that everything is as clear as possible, and consistent with the way Facebook explains it.