react-native-navigation的迁移库

NativeCommandsSender.js 1.2KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. import { NativeModules } from 'react-native';
  2. export default class NativeCommandsSender {
  3. constructor() {
  4. this.nativeCommandsModule = NativeModules.RNNBridgeModule;
  5. }
  6. setRoot(layoutTree) {
  7. this.nativeCommandsModule.setRoot(layoutTree);
  8. return Promise.resolve(layoutTree);
  9. }
  10. setOptions(containerId, options) {
  11. this.nativeCommandsModule.setOptions(containerId, options);
  12. }
  13. push(onContainerId, layout) {
  14. this.nativeCommandsModule.push(onContainerId, layout);
  15. return Promise.resolve(layout);
  16. }
  17. pop(containerId) {
  18. this.nativeCommandsModule.pop(containerId);
  19. return Promise.resolve(containerId);
  20. }
  21. popTo(containerId) {
  22. this.nativeCommandsModule.popTo(containerId);
  23. return Promise.resolve(containerId);
  24. }
  25. popToRoot(containerId) {
  26. this.nativeCommandsModule.popToRoot(containerId);
  27. return Promise.resolve(containerId);
  28. }
  29. showModal(layout) {
  30. this.nativeCommandsModule.showModal(layout);
  31. return Promise.resolve(layout);
  32. }
  33. dismissModal(containerId) {
  34. this.nativeCommandsModule.dismissModal(containerId);
  35. return Promise.resolve(containerId);
  36. }
  37. dismissAllModals() {
  38. this.nativeCommandsModule.dismissAllModals();
  39. return Promise.resolve(true);
  40. }
  41. }