Search code examples
javascriptreact-nativeeventstriggersdispatch

Is there a way to create and dispatch/trigger custom event with react-navigation?


With DOM, you can easily create a trigger custom event with Javascript like so:

var event = new Event('build');

// Listen for the event.
elem.addEventListener('build', function (e) { /* ... */ }, false);

// Dispatch the event.
elem.dispatchEvent(event);

Is there a way to do that with React-Native?


Solution

  • React Native provides NativeEventEmitter for handling custom events.

    import { NativeEventEmitter } from 'react-native';
    const eventEmitter = new NativeEventEmitter();
    
    eventEmitter.emit('custom-event', { data: 'test' });
    
    eventEmitter.addListener('custom-event', event => {
      console.log(event); // { data: 'test' }
    });