Shared event emitter between native and JS for React Native.
Objective-C JavaScript
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
iOS commit Aug 27, 2015
.flowconfig commit Aug 27, 2015
.gitignore commit Aug 27, 2015
.npmignore commit Aug 27, 2015
GlobalEventEmitter.ios.js logical bug fix Jan 13, 2016
LICENSE Initial commit Aug 27, 2015
README.md Update readme Aug 27, 2015
RNTGlobalEventEmitter.h commit Aug 27, 2015
RNTGlobalEventEmitter.m commit Aug 27, 2015
Screenshot.png commit Aug 27, 2015
index.ios.js commit Aug 27, 2015
package.json dependencies -> peerDependencies Jan 25, 2016

README.md

react-native-global-event-emitter

Shared event emitter between native and JS for React Native.

Uses iOS NotificationCenter and RN DeviceEventEmitter to provide a seamless global event bus between native and React Native.

Screenshot

Screenshot of the example app

Usage

// listen to event posted to NSNotificationCenter by native code
var eventName = GlobalEventEmitter.UIApplicationNotifications.UIApplicationDidEnterBackgroundNotification;
GlobalEventEmitter.addListener(eventName, (data) => {
    console.log('UIApplicationDidEnterBackgroundNotification');
});

// event available on NSNotificationCenter for native code
var eventName = "UserDidLoginFromJS"
GlobalEventEmitter.emit(eventName, {name: 'John'});

Properties

  • addListener: Add a listener for an eventName and pass a callback function.
  • emit: Emit events to native/JS globally.
  • removeListener: Remove a listener by passing the eventName and the reference to the original callback function.
  • removeAllListeners: Stop listening to all events of a particular eventName.

Installation

Use your preferred method of including the library in your app.

Example

Try the included example:

git clone git@github.com:paramaggarwal/react-native-global-event-emitter.git
npm install
open iOS/RNTGlobalEventEmitter.xcodeproj

Then Cmd+R to start the React Packager, build and run the project in the simulator.

Author

Param Aggarwal (paramaggarwal@gmail.com)

License

MIT License