@beemydesk/react-facebook-pixel
v0.2.4
Published
Pixel Kit for React
Maintainers
Readme
React Facebook Pixel
React JS wrapper for Facebook's Pixel
Install
npm install react-facebook-pixel
or
yarn add react-facebook-pixel
How to use
import ReactPixel from 'react-facebook-pixel';
const advancedMatching = { em: '[email protected]' }; // optional, more info: https://developers.facebook.com/docs/facebook-pixel/advanced/advanced-matching
const options = {
autoConfig: true, // set pixel's autoConfig
debug: false, // enable logs
};
ReactPixel.init('yourPixelIdGoesHere', advancedMatching, options);
ReactPixel.pageView(); // For tracking page view
ReactPixel.track(event, data); // For tracking default events, more info about events and data https://developers.facebook.com/docs/ads-for-websites/pixel-events/v2.9
ReactPixel.trackSingle('PixelId', event, data); // For tracking default events, more info about events and data https://developers.facebook.com/docs/ads-for-websites/pixel-events/v2.9
ReactPixel.trackCustom(event, data); // For tracking custom events
ReactPixel.trackSingleCustom('PixelId', event, data); // For tracking custom eventsif you're bundling in CI
...
componentDidMount() {
const ReactPixel = require('react-facebook-pixel');
ReactPixel.init('yourPixelIdGoesHere');
}
...otherwise CI will complain there's no window.
GDPR Compliance
To be GDPR compliant, revoke the consent right after init and grant it when the user accepts to be tracked
...
ReactPixel.init('yourPixelIdGoesHere', advancedMatching, options);
ReactPixel.revokeConsent();
...
...
<button onClick={ReactPixel.grantConsent}>Accept cookies</button>.
...Dev Server
npm run start
Default dev server runs at localhost:8080 in browser. You can set IP and PORT in webpack.config.dev.js
Production Bundle
npm run bundle