self.js 412 Bytes
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
import {
  NativeModules,
  DeviceEventEmitter,
} from 'react-native';

const { WorkerSelfManager } = NativeModules;

const self = {
  onmessage: null,

  postMessage: (message) => {
    if (!message) { return; }
    WorkerSelfManager.postMessage(message);
  }
};

DeviceEventEmitter.addListener("WorkerMessage", (message) => {
  !!message && self.onmessage && self.onmessage(message);
});

export default self;